Practical Bitcoin: Tools, Apps and Guides

34 minute read

Now that I’ve studied “the blockchain” for a couple years, it’s getting easier to navigate this space. Meanwhile, Bitcoin has proven its dominance, and I’m increasingly compelled to focus a lot more on acquiring practical experience, aiming towards a sovereign work-flow.

While there are already a number of excellent infomative lists, resources pages, and other collections, I haven’t noticed any that focused specifically on using Bitcoin.

I began by sorting through the links I’ve collected over the past year, then scouring,, Bitcoin Only, LNRoute… “one link at a time”, sorting them in an iterative process, until clear categories began to emerge.

Once I got into the Awesome lists, I felt like I had surveyed a broad swath of the practical Bitcoin info-systems. Next, I dove face first into the Bitcoin Topic on Github. As far as practical applcations of Bitcoin, it’s hard to find a more comprehensive source than that. I’m still not through the entire list.

You MUST Do Your Own Research

These guides and tutorials are a great jumping off point, from which you can explore a variety of technologies you may not even have known were available.

Please. Do your own research.

There may be newer materials or advisaries for any of these products\services. Be sure to check for recent information!

⧉ Resources

Community led and supported fork of




bitcoin/bitcoin - download

Bitcoin Learning Master List

🗃 Explorers

Blockchain is the world’s most trusted all-in-one crypto company. We’re connecting the world to the future of finance through our suite of products including the leading crypto wallet, bitcoin explorer, and market information.

🗃 Fees

Check the fee efficiency of your last transaction!

🗃 Escrow

Escrow Agents should be impartial and trusted intermediaries who hold custody of buyer’s funds until pre-defined conditions are met. With the help of public key encryption, parties who don’t know or trust each-other can engage in commerce, online.

Bitcoin Trust Platform - Identity & reputation management, multi-signature smart contracts and consumer protection for Bitcoin and other cryptocurrencies.

Using PGP and Cryptocurrency Keysignatures

Asymmetric Encryption: Phil Zimmerman, PGP, Bitcoin and Ethereum key-signatures, Escrow, SSL, Various Apps and Resourses.

🗃 Privacy

Bitcoin Anonymity Guide 2019: How to use BTC like a straight up G

Jolly Roger’s Security Guide for Beginners - Deep Dot Web (old, but, perhaps still worth a read)

Buying and Using Bitcoin Anonymously Without ID (2019 Updated)

Bitcoin Security Brief Volume 1 with Dhruv Bansal

One of the most often overlooked aspects to owning Bitcoin is how to safely secure and store it. Most people have their own best practices…

Privacy for HODLers @6102Bitcoin

🗃 Visualizations




⧉ Get Bitcoin

💱 Earn - Bitcoin Fundraising - Bitcoin Fundraising

Services -

The Bitcoins Earning Guide for poor countries -

Free Bitcoins - 10 Ways To Earn BTC For Free! • The Bitcoin Strip

How to (seriously) earn Bitcoins for dummies.

[TUTORIAL] Earn Bitcoins Here!

Are you working in Bitcoin full time? Did you feel something, really feel something and felt you HAD to work in the Bitcoin space? What’s your story? How are you contributing to the Bitcoin ecosystem? I’d love to hear your stories and maybe others can get inspired t…


💱 Buy

Buy Bitcoin with Cash


Cashback Rewards

Dollar Cost Average with BTCDCA BEC020

Bitcoin Savings Plan \ Withdrawal Calculator

How I Learned to Stop Worrying and Love the Volatility. Inspired by (SSS) - A Sane and Simple bitcoin Savings plan.

brndnmtthws/optimal-buy-cbpro - Scheduled buying - Coinbase Pro

Automate Stacking Sats is the new Automate Your Finances

- Atms

Bitcoin ATM

A Bitcoin ATM is a kiosk that allows a person to purchase Bitcoin by using cash or debit card. Some Bitcoin ATMs offer bi-directional functionality enabling both the purchase of Bitcoin as well as the sale of Bitcoin for cash. In some cases, Bitcoin ATM providers require user…

Bitcoin ATM Map – Find Bitcoin ATM, Online Rates

1001+ Bitcoin ATM Map Locations Near Me (2019 Updated)

10 Best Bitcoin ATM Machines – Start Your Own Business - Cryptalker


Skyhook, the open-source sub-$1000.00 Bitcoin ATM. Contribute to mythril/skyhook development by creating an account on GitHub.

‎What Bitcoin Did -Hassan Khoshtaghaza on Operating a UK Bitcoin ATM

‎What Bitcoin Did Podcast -Bitcoin ATM Regulations with Bill Repasky

‎What Bitcoin Did Podcast -Karel Kyovsky on Manufacturing Bitcoin ATMs

‎What Bitcoin Did Podcast -Operating Bitcoin ATMs with Gil Valentine & Eric Gravengaard from Athena Bitcoin

- Europe

- North America

Cash App

- Australia

Amber - Features

The easiest way to buy Bitcoin with the use of transaction round-ups, automatically recurring purchasing and one-off purchases in one application that takes advantage of dollar cost averaging and micro-investing. Available in Australia on iOS and Android.

⧉ Wallets

  • Do not use wallets that don’t give you recovery data; these wallets are likely controlling your keys.
  • Do not use paper wallets unless you’re an advanced user who understands all the risks.
  • Do not store large amounts of value in single signature wallets.
  • Make sure your heirs know how to recover your wallets without you! Note that it is NOT recommended that novices use the Bitcoin Core wallet. If you want to use a wallet backed by a fully validating node you run, read Securing Your Financial Sovereignty.

Choose your wallet here -

Choose your wallet here - btcinformation - Wallets

Bitcoin Core Full node & Bitcoin wallet. Desktop

Samourai Wallet The most feature rich and advanced bitcoin wallet available on Android today. Android

Wasabi Wallet Privacy focused Bitcoin wallet, that implements trustless coin shuffling Desktop

Electrum The most feature rich bitcoin desktop wallet available today. Desktop & Android

Blockstream Green Easy to use wallet. Use Google Authentication not Email/Phone. iOS & Android

GreenAddress Desktop companion to Blockstream Green mobile wallet. Deskop

Muun Wallet Relatively new wallet with novel multi-sig 2-of-2 spending. Android

Hodl Wallet Relatively new wallet with simple UI. iOS & Android

Armory Cold Storage & Multisig Desktop

ABCore Bitcoin Core Full Node for Android Android

Samourai Wallet)

HOWTO: create a 100% secure wallet

[General] Bitcoin Wallets - Which, what, why?

BlueWallet/BlueWallet Bitcoin thin client for iOS & Android. Built with React Native - BlueWallet/BlueWallet

👛 Blockstream-green

Blockstream Green

Blockstream Green is our industry-leading Bitcoin wallet, providing Bitcoin users with an unrivaled blend of security and ease-of-use.

👛 Wasabi

MIT Bitcoin Expo 2019 - Wasabi Wallet: Unfairly Private


Open-source, non-custodial, privacy-focused Bitcoin wallet, that implements trustless coin shuffling with mathematically provable anonymity - Chaumian CoinJoin.


WalletWasabi.Community/ Dojo - Wasabi Docs

The Dojo is the place where all the many Wasabikas get together and collaborate. Here we honor those who have already earned their belts, and celebrate those who get promoted. This is the Wasabi documentation, an archive of knowledge about the open-source, non-custodial and p…

402 Payment Required - Wasabi wallet - 1 Download & Setup (Linux)

How to Update Wasabi Wallet to v 1.1.1 with Bitcoin Core Integrati…

Release Summary: + If you have a full node running, from now on Wasabi will ask blocks from it instead of random peers. This is the first step towards comple…

Bitcoin Core vs Wasabi Wallet — Network Level Privacy

Bitcoin Core, more specifically full nodes are considered to be the pinnacle of network level privacy in Bitcoin wallets that no other…

Bitcoin Takeover Podcast, Ep S2 E2: Udi Wertheimer on Being a Bitcoiner

Jun 28, 2019 (Discusses privacy w wasabi/coinjoin vs chainanylists in the first half)

I’ve got a full node running on my machine connected to mainnet through tor network. I think it’s common configuration among privacy conscious…

[WIP] Full node integration - hybrid mode by lontivero · Pull Re…

This PR contains a first approach for the full integration with bitcoin core nodes. At initialization time it tries to connect with the local node and in case it succeed then use it for everything …

One of the key points in Wasabi is that you don’t need to run a full node to protect your privacy. Wasabi is the first light wallet that doesn’t leak information to third parties and protects you against blockchain (thanks to its built-in coinjoin feature, built-in chain analyzer and the coin control ) and network analysis.

👛 Samourai

Samourai Wallet - Apps on Google Play

Samourai Wallet is the most feature rich and advanced bitcoin wallet available on Android today. It has been created from the ground up by privacy activists to be extremely portable, highly secure, and lead the pack in protecting the privacy of bitcoin users. - Full Segwit S…


A python script computing the entropy of Bitcoin transactions and the linkability of their inputs and outputs. - Samourai-Wallet/boltzmann

👛 Electrum - great way to safely “watch” the status of your (offline) cold-storage wallet.

[Guide] How to Create a Watch-only Wallet (for Electrum)

-Got electrs (Electrum server) running on my #RaspiBlitz node thanks to @openoms tutorial [openoms/bitcoin-tutorials/electrs] and now connected to my @ShiftCryptoHQ #BitBox app. BitBox02 & BitBox app + RaspiBlitz & Electrum


Electrum; Bitcoin thin client. Contribute to spesmilo/electrum development by creating an account on GitHub.

Ubuntu Install:

instructions from, augmented for ubuntu

Install dependencies:

sudo apt-get install python3-pyqt5

Download package:


Verify signature:


gpg --keyserver --recv-keys 6694D8DE7BE8EE5631BED9502BD5824B7F9470E

gpg --verify Electrum-3.3.8.tar.gz.asc


tar -xvf Electrum-3.3.8.tar.gz

Install Python:

sudo apt-get install python3-setuptools python3-pip

Run with PIP:

python3 Electrum-3.3.8/run_electrum


python3 -m pip install --user Electrum-3.3.8.tar.gz[fast]

Add Symlink:

sudo ln -s ~/.local/bin/electrum /usr/local/bin/electrum

- electrum-personal-server r/Bitcoin - Electrum Personal Server - The best way to connect you… basically, electrum personal server is the more sovereign way to run the electrum wallet… analogous to using the bitcoin-core wallet with the complete blockchain.

Electrum Server Gateways


It is an implementation of the Electrum server protocol which fulfills the specific need of using the Electrum wallet backed by a full node, but without the heavyweight server backend, for a single user. It allows the user to benefit from all of Bitcoin Core’s resource-saving features like pruning, blocksonly and disabled txindex. All of Electrum’s feature-richness like hardware wallet integration, multisignature wallets, offline signing, seed recovery phrases, coin control and so on can still be used, but connected only to the user’s own full node. Full node wallets are important in bitcoin because they are an big part of what makes the system be trustless. No longer do people have to trust a financial institution like a bank or paypal, they can run software on their own computers. If bitcoin is digital gold, then a full node wallet is your own personal goldsmith who checks for you that received payments are genuine. Full node wallets are also important for privacy. Using Electrum under default configuration requires it to send (hashes of) all your bitcoin addresses to some server. That server can then easily spy on your transactions. Full node wallets like Electrum Personal Server would download the entire blockchain and scan it for the user’s own addresses, and therefore don’t reveal to anyone else which bitcoin addresses they are interested in. electrum personal server - a full node for your electrum wallet

👛 Bitgo


This document provides step-by-step details about how to use the non-custodial BitGo servicethrough the Web interface as well as how to administer the service and configure policies.

👛 Hardware - Other Hardware

radmin revealer -Optical Seed Encryption Tool

ColdCard Hardware Wallet

Opendime Bitcoin Bearer Bond

Bitpiggys Piggybank + Opendime -Integration Testing - Wasabi

- Trezor

How to transfer bitcoin from Coinbase to Trezor hardware wallet



Send Bitcoin to Multiple Addresses in One Transaction Only - TREZOR

OJ Jordan

NEW 2019 TREZOR model T - Complete Setup, Backup and Restore Tutorial

This is my new, updated 2019 complete Setup, Restore, Backup tutorial for the Trezor device Model T The device is touchscreen and has a few recent upgrades t…





Trezor SSH Agent for Windows (Putty, WinSCP and more) + KeepKey supported! - martin-lizner/trezor-ssh-agent

- Casa-keymaster

Casa Keymaster Security: Mobile Key Overview

In this post, we review the security architecture of the Mobile Key on the new Casa Keymaster app, and how we’ve carefully designed a better backup solution.

Casa - Youtube

Setting up Keymaster by Casa (Basic Multisig)

- Ledger

Ledger Nano X - Secure your crypto


Brand New Ledger Nano X Step By STep Guide. Unboxing and Complete Set-up Guide from start to finish. This is my fifth tutorial on the Ledger Devices, I’ve be…

- Cold Card


👛 Cold Storage

Bitcoin is digital gold, and this continues to be its most appropriate and concise metaphor. I recently discussed some parallels between…


Square’s Bitcoin Cold Storage solution. Contribute to square/subzero development by creating an account on GitHub.


Make a cold storage for your coins right in terminal, offline - Overtorment/cli-cold-wallet

👛 Paper



dbasch/bitcoin-paper-wallet - Generate a Bitcoin paper wallet offline as a png file, no need for a browser. - dbasch/bitcoin-paper-wallet

nurupo/paper-store - Cold store small files on paper as QR codes – PGP keys, Bitcoin keys, Tox keys or any other small files in general. - nurupo/paper-store

⧉ Full Node

bitcoin/bitcoin - releases - download

Bitcoin Core initial synchronization will take time and download a lot of data. You should make sure that you have enough bandwidth and storage for the full block chain size (over 200GB). If you have a good Internet connection, you can help strengthen the network by keeping your PC running with Bitcoin Core and port 8333 open. Read the full node guide for details.

Why Run a Full Node? — Securing your Financial Sovereignty

While managing your own keys ensures that you can’t lose your money due to the negligence or maliciousness of a custodian, running a full node ensures that you can’t be tricked into accepting invalid bitcoin payments. Running and using your own node gives you the strongest security model Bitcoin has to offer.


What Comprises a Bitcoin Fullnode Implementation


Easiest BTC/LN desktop app, for Windows, macOS, and Linux - lightning-power-users/node-launcher

402 Payment Required Youtube Playlist - The Bitcoin Core Client

Other full node options: @CasaHODL: @nodl_it: Cyphernode: And of course, just running Bitcoin Core directly: “Running a Full Node”: * Bitcoin Core: - bcoin-org/bcoin/releases

Enterprise-level Bitcoin and Blockchain libraries. Built for businesses, miners, wallets, and hobbyists.

btcsuite/btcd - docs

An alternative full node bitcoin implementation written in Go (golang)

Gocoin - Gocoin is a full Bitcoin solution written in Go language (golang). + tools

Libbitcoin Node - releases

These binaries require no installation, simply download and run the single file. Mainnet and testnet are supported based on configuration differences. You can verify the downloads using the signed SHA256 hashes below.


bitcoin node based on bitcoin-ruby-blockchain. Contribute to mhanne/bitcoin-ruby-node development by creating an account on GitHub.

ryanxcharles/yours-bitcoin -Javascript implementation of Bitcoin.




The Bitcoin Rabbi (@thebitcoinrabbi) -Here is a 1 minute video showing how to setup a bitcoin full node on your computer from By default it currently requires 243gb of hard drive space, so I set mine up on an external hard drive.

Node update: 1. Downloaded @LukeDashjr’s knots and started sync with pruning 2. Ordered external drive to setup node without pruning 3. Activated @CasaHODL 4. Bought a @nodl_it to test 5. Bought raspberry pi kit to build my own node Will feedback on all. - how-to-set-up-a-home-server-and-use-it-as-a-bitcoin-node Blockchain 101: get your full node running!

In this episode, we talk about what it is like to set up a full node. Speaking with the Parity community support lead, Thibaut Sardan, we also explore the features of the Parity Ethereum client, the light client, and help answer some frequently asked questions.

There’s a common misconception that all full nodes store the entire blockchain. The reality is a bit more complex: (1) A new node downloads the entire chain only to trustlessly compute the current UTXO set: what coins exist and who owns them (also called the chainstate).

Whats that? A one click desktop app that installs Tor/Bitcoin Core for you, generates a hidden service that controls your rpc port and displays a QR code so you can use your own node as a backend for your mobile wallet securely and privately from anywhere in the world vi…


Installing Bitcoin Core on Linux


Easiest BTC/LN desktop app, for Windows, macOS, and Linux - lightning-power-users/node-launcher

How to compile a Bitcoin Full Node on a fresh installation of Kubuntu 18.04 without any Linux experience whatsoever.

📶 Raspberry pi RaspPiBolt Guide


How to run a headless Bitcoin Full Node on Raspberry Pi 3 with Raspbian Stretch & Bitcoin v.0.15.1.


Fastest and cheapest way to get your own Lightning Node running - on a RaspberryPi with a nice LCD

We’ve updated our Raspberry Pi docs. Run BTCPay on your own cheap single-board computer. BTCPay on RPI 4 BTCPay on RPI 3 Hugo kudos to our RPI crew for amazing work : @wiz @lightninginabox @DennisReimann and others who hel…

Bitcoin Core + LND 0.4 Beta (mainnet) Installer for Raspberry

Raspberry Pi Bitcoin Monitor with OLED Ticker](

📶 Pi2 (The main limitation for pi2 is 1 gig of ram… and I saw in btcpayserver chat the PI4 is even recommended because of the additional ram. However, if you’re not processing a multitude of transactions, perhaps it would suffice to start. It would likely prove necessary to download the blockchain with another device, then copy it to your microsd.)

superjamie/lazyweb/wiki/Raspberry-Pi-Power -How to Create Your Own Bitcoin Full Node With a Raspberry Pi

Running Bitcoin Core on External Hard Drive

📶 Hardware - Plug & Play Node Hardware


Setting up your Casa Node




Bitseed Core - Bitcoin full node

Bitseed Core comes preconfigured as a Bitcoin full node, allowing you to keep bitcoin running 24/7 without slowing your PC.

⧉ Payments


blockchain/thunder - Off-Chain Bitcoin payments using smart contracts


Bitcoin/Altcoins PHP Payment Class. It supports Bitcoin BitcoinCash DASH Dogecoin Litecoin Reddcoin Feathercoin Vertcoin Potcoin Speedcoin. Install GoUrl php script - bitcoin api payment gateway on…

sagivo/accept-bitcoin -Accept bitcoin payments using Node.js.


Self-hosted Bitcoin payment gateway (฿). Contribute to Overtorment/Cashier-BTC development by creating an account on GitHub.

I set up an instance of @BtcpayServer on @Azure and tested it with @wordpressdotcom + @WooCommerce. It is a fantastic product. Finally someone (@NicolasDorier) has built a sensible, open source platform for Bitcoin merchants! If you have or want a business - go check i…

💳 Btcpay - BTCPay has become a meteoric success. But for what started out as a hobbyist’s side project, this success has, in some respects, become unwieldy.

Learn how to build an online e-commerce store and accept Bitcoin payments with no coding or web-designing skills required. Using free and open-source software: WordPress, WooCommerce and BTCPay. No steps skipped and video tutorials.




BTCPay server plugin for Drupal Commerce 2.x. Contribute to btcpayserver/commerce_btcpay development by creating an account on GitHub.


This is a transaction history plugin for BTCPay for tax reporting




Using React and BTCPayServer to receive Bitcoin Payments


The title is pretty explicit, but I will go into it a bit. Currently users have to: (1) Install Wordpress+Woocommerce, Magento, Prestashop or Drupal & (2) Install the actual BTCPay server i…

Trusted third parties are security holes. By relying on someone else to manage a server for you, you are potentially exposing yourself to a certain attack vector. The most significant attack vector when using a third party host is that a malicious and technically skilled host can create a forked version of BTCPay Server and modify it so that it either spy on your transactions or replace your xpubkey with his. This means that future payments made to you may end up in a malicious party wallet.

BTCPay does not allow server hosts to view the stores of other users nor have access to any personal data (except for registration email address). The xpubkey and even balances of other users can’t be seen. However, as mentioned, a malicious third party could modify that by creating a fork that can look like BTCPay on the front but be something completely different in reality. The biggest concern, which happens when using a third-party host (even if the owner of a self-hosted server is not malicious) comes from the nature of the Bitcoin itself. If a user is not running a full node but instead relies on someone else’s node, his transactions can be listened to by the owner of that node.

Install BTCPayServer on Raspiblitz V1.3 - Raspberry Pi 4B

💳 libre-patreon

JeffVandrewJr/patron - LibrePatron: A Self-Hosted Patreon Alternative for BTCPay - JeffVandrewJr/patron

Today I released LibrePatron, an alternative to Partreon backed by @BtcpayServer. Most Patreon alternatives don’t implement the full Patreon feature set. This seeks to change that. Sample site (alpha not mobile responsive, mobile coming soon!): T…

⧉ Application

🧩 Layer One

SUPER INTERESTING: “The platform provides tooling, apps & services on top of any bip32 compatible Bitcoin wallet. It’s a service layer on top of the Bitcoin network, offering powerful utilities for users and/or developpers.”


️ Open source cryptocurrency casino. Contribute to Bitlits/Bitcoin-Casino development by creating an account on GitHub.

The Best Bitcoin Apps of 2019



ZeroNet - Decentralized websites using Bitcoin crypto and BitTorrent network - HelloZeroNet/ZeroNet

🧩 Proofs

How to Create and Verify a Chainpoint Proof


A Command Line Interface (CLI) for creating and verifying Chainpoint proofs. - chainpoint/chainpoint-cli


A Node.js library for anchoring data onto the Bitcoin blockchain and confirming anchored data on Bitcoin and Ethereum. - Tierion/blockchain-anchor


Satoshi Proof is your personal notary leveraging the power of the Bitcoin network to prove existence of text or images at a certain time. - ligi/SatoshiProof


OpenTimestamps client. Contribute to opentimestamps/opentimestamps-client development by creating an account on GitHub.


🧩 OpenBazaar


Beginners Guide to Decentralization

Beginners Guide to Buying Goods Services and Cryptocurrency on OpenBazaar


OpenBazaar 2.0 Server Daemon in Go. Contribute to OpenBazaar/openbazaar-go development by creating an account on GitHub.



OpenBazaar 2.0 Desktop Client (talks to openbazaar-go server daemon) - OpenBazaar/openbazaar-desktop



Openbazaar is a marketplace for Bitcoin users where they can trade different stuffs in exchange for the cryptocurrency. What makes it different from other ecommerce is they offer a software for users to download in order to trade. Instead of users visiting a website, they wil…

🛰️ Satellite

Building Your Own Bitcoin Satellite Node

The Blockstream Satellite network broadcasts the Bitcoin blockchain around the world 24/7 for free, protecting against network interruptions and providing an…

Blockstream Satellite API: Pay with BTC via Lightning to Broadcast Data Globally

Building Your Own Bitcoin Satellite Node: Part 1 - Hardware Assembly

Building Your Own Bitcoin Satellite Node: Part 2 — Software Installation

Building Your Own Bitcoin Satellite Node: Part 3 — Dish Alignment

Completely Offline Bitcoin Transactions

Build Your Own Wireless Bitcoin Service Provider — Complete With Blockstream Satellite Backhaul

⧉ Development - Community led and supported fork of

Teach Bitcoin protocol training is an in-depth program that was inspired from the study of several hundred thousand lines of implementation code. It teaches you both the high and low-level designs of the Bitcoin Protocol, so you can greatly accelerate your journey to becoming a Bitcoin implementation developer or protocol researcher.

Bitcoin toolchain, unit testing & deterministic builds - Marco Falke

The build system is based on autotools, so it should just work anywhere where autotools runs. Just run ./ ./configure and then make, that’s it.

We recently added support for MSVC for Windows developers in the build system. For release builds, we use cross-compilation which is currently only supported on Ubuntu. jimmysong/programmingbitcoin Repository for the book. Contribute to jimmysong/programmingbitcoin development by creating an account on GitHub. !

Why I Decided to Build Bitcoin from Scratch

Udi Wertheimer (@udiWertheimer) @DeHuntisOn 1/ Here are a few examples for using the command line to deepen your understanding of Bitcoin: * Use bitcoin-cli to work with your full node and learn its capabilities. @aantonop’s 3rd chapter of Mastering Bitcoin and @ChristopherA’s tutorial will help https:/…

Noded 0.4.0 with Jimmy Song Michael Goldstein and Pierre Rochard have a conversation with Jimmy Song about Bitcoin forks and Programming Blockchain.

A brief history of Bitcoin development - youtube !

gource animation of the bitcoin repository up to April 13 2017. Feel free to improve on it. Things that are obviously missing is music, author name consolida…

Taproot, and Schnorr, and SIGHASH_NOINPUT, oh my! Slides: Taproot, and Schnorr, and SIGHASH_NOINPUT

Pieter Wuille, Bitcoin Core developer and Blockstream co-founder, spoke about Taproot, Schnorr, and SIGH…

SF Bitcoin Developers


Mastering Bitcoin 2nd Edition - Programming the Open Blockchain


A curated list of bitcoin services and tools for software developers.

chaincodelabs/bitcoin-curriculum !!!!!!!!


🚧 Read

aantonop/bitcoinbook kallerosenbaum/grokkingbitcoin

Source repository for Grokking Bitcoin, with clear explanations and many excellent illustrations, this book makes even the most highly technical topic accessible. Q&A for Bitcoin crypto-currency enthusiasts

Elliptic Curve Cryptography A Gentle Introduction

bitcoin-studio/Bitcoin-Programming-with-BitcoinJS - Bitcoin Programming with BitcoinJS and Bitcoin Core CLI - bitcoin-studio/Bitcoin-Programming-with-BitcoinJS


🚧 Tools


Python-based Bitcoin and alt-coin utility library. - richardkiss/pycoin


Bitcoin Command Line Tool. Contribute to libbitcoin/libbitcoin-explorer development by creating an account on GitHub.


A little Python utility that lets you monitor Bitcoin addresses through Blockchain Websocket API and perform custom callbacks. - tsileo/txwatcher


A collection of simple programs which can generate bitcoin wallets, create and sign transactions, and send transactions over the bitcoin network. - prettymuchbryce/hellobitcoin


The fastest and most interactive terminal based UI application for tracking cryptocurrencies - miguelmota/cointop



Python Bitcoin tools. Contribute to sr-gi/bitcoin_tools development by creating an account on GitHub.


A Bitcoin-without-Blockchain client w/ RPC that can provide any block or transaction - gdassori/spruned



Set of bitcoin-related bash functions. Contribute to grondilu/bitcoin-bash-tools development by creating an account on GitHub.


Tools & Documentation from Jonathan Cross. Contribute to jonathancross/jc-docs development by creating an account on GitHub.


List all bitcoin addresses with positive balance. Contribute to graymauser/btcposbal2csv development by creating an account on GitHub.


A BIP21 compatible URL encoding utility library. Contribute to bitcoinjs/bip21 development by creating an account on GitHub.


The source code of main tools used in Bitcoin “non-malware-based” attacks. - SMH17/bitcoin-hacking-tools


tool to monitor full bitcoin node bitcoind-web. Contribute to KanoczTomas/01Cnode development by creating an account on GitHub.


Cartographer: A new type of seed for the Bitcoin network - bitcoinj/httpseed

🚧 Api

Gem - Portfolio Tracker Does the Work for You

Gem automatically syncs your balances, trade activity, and holdings across 20+ crypto exchanges, so you can keep your crypto portfolio up-to-date. Free app. An open-source bitcoin blockchain API Multi-Currency API for Developers

Sequence by Chain database for the token economy.

Nomics’ Free Cryptocurrency & Bitcoin Market Data API

The best free cryptocurrency and bitcoin API. Programmatically access current and historical price, markets, and exchange rate data from exchanges like Binance, Gemini, GDAX, and Poloniex. Quickly create mobile apps, charts, and pricing websites with our lightning fast R…



RomelTorres/alpha_vantage - A python wrapper for Alpha Vantage API


Coinbase Wallet

🚧 Scripting has a neat animated Bitcoin script interpreter and debugger for those who want to better understand script execution. gif


A Bitcoin Script interpreter and debugger in Scala - liuhongchao/bitcoin4s


Programming Bitcoin Script Transaction (Crypto) Contracts Step-by-Step - Let's start with building your own bitcoin stack machine from zero / scratch and let's run your own bitcoin …


Simplicity is a blockchain programming language designed as an alternative to Bitcoin script. - ElementsProject/simplicity

Scriptless Scripts: How Bitcoin Can Support Smart Contracts…

Miniscript: practical composability for Bitcoin script


A Bitcoin Script IDE to facilitate the learning, testing, and teaching of Bitcoin Script.


🚧 Wallet

Coinbase Digital Currency API


Copay is a secure Bitcoin and Bitcoin Cash wallet platform for both desktop and mobile devices. - bitpay/copay


Javascript Bitcoin Wallet. Supports Multisig, Stealth, HD, SegWit, Bech32, Time Locked Addresses, RBF and more! - OutCast3k/coinbin



Open-source, non-custodial, privacy focused Bitcoin wallet for Windows, Linux, and Mac. Built-in Tor, CoinJoin, and coin control features. - zkSNACKs/WalletWasabi


Javascript Bitcoin Wallet. Supports Multisig, Stealth, HD, SegWit, Bech32, Time Locked Addresses, RBF and more! - OutCast3k/coinbin


Blockchain Wallet API Service. Contribute to blockchain/service-my-wallet-v3 development by creating an account on GitHub.


An open source Bitcoin wallet password and seed recovery tool designed for the case where you already know most of your password/seed, but need assistance in trying different possible combinations….


A proof-of-concept cracker for cryptocurrency brainwallets and other low entropy key alogrithms. - ryancdotorg/brainflayer


An automated bitcoin wallet collider that brute forces random wallet addresses - Isaacdelly/Plutus

johnathanmartin/piWallet piWallet is an open source program developed by Johnathan Martin that allows almost anyone to setup an online web wallet for a cryptocurrency. - johnathanmartin/piWallet


Bitcoin and ETH wallet. Contribute to terryjiao/BitcoinWallet development by creating an account on GitHub.



Bitcoin Wallet Import Format JS encoding/decoding module - bitcoinjs/wif


Gotham city is a fully functional project to demonstrate real-life example of minimalist Bitcoin decentralized HD wallet using 2 party ECDSA - KZen-networks/gotham-city



Useful library for validation of Bitcoin, Litecoin, Ethereum and other cryptocoin addresses - ognus/wallet-address-validator


Bitcoin Privacy Wallet. Contribute to BobWallet/BobWallet development by creating an account on GitHub.

- Keys


JavaScript implementation of Bitcoin BIP39: Mnemonic code for generating deterministic keys - bitcoinjs/bip39


:snake: Mnemonic code for generating deterministic keys, BIP39 - trezor/python-mnemonic


BIP38 is a standard process to encrypt Bitcoin and crypto currency private keys that is less susceptible to brute force attacks thus protecting the user. - bitcoinjs/bip38


A macOS app to safely generate cryptocurrency address - onmyway133/AddressGenerator


A simple library to recover the private key of ECDSA and DSA signatures sharing the same nonce k and therefore having identical signature parameter r - tintinweb/ecdsa-private-key-recovery

NovaCrypto/BIP39 Java Microlibrary implementation of BIP0039.




A small set of utilities for use with BIP32 HD key nodes - bitcoinjs/bip32-utils

A New Mnemonic Seed Scheme Idea

Network-less VM Bitcoin Storage

Creating an offline virtual machine with Qubes OS to generate Bitcoin keys.

🚧 Test-nets

Bitcoin Testnet Explorer

🚧 Explorers

janoside/btc-rpc-explorer (demo)

Simple, database-free, self-hosted Bitcoin blockchain explorer, via RPC. Built with Node.js, express, bootstrap-v4.


Simple and pure block explorer you can run on top of a full node - yogh-io/bitcoin-transaction-explorer


🚧 Exchange #bitcoin-otc is an over-the-counter marketplace for trading with bitcoin. The marketplace is located in #bitcoin-otc channel on the freenode IRC network. If you don’t have an IRC client, click here to visit the channel with your web browser.


phil8192/limit-order-book - Bitstamp real time console based limit order book.


🚧 Fork

Creating forks

LoyceV’s Bitcoin Fork claiming guide (and service)

🚧 Anchor


🚧 Encryption


WebAssembly versions of secp256k1, ripemd160, sha256, sha512, and sha1 - bitauth/bitcoin-ts



Tools for creating Merkle trees, generating merkle proofs, and verification of merkle proofs.


Okamoto Beats Schnorr: On the Provable Security of Multi-Signatures

🚧 Mobile


a blockchain private key management library on iOS - consenlabs/token-core-ios


A secure and decentralized Bitcoin and other cryptocurrency wallet for Android phones. Supports Bitcoin, Ethereum, EOS, Binance Chain, Bitcoin Cash, DASH, … -


Cryptocurrency components for JVM & Android (JSON client & server support, services, DSL, CLI) - ConsensusJ/consensusj



Full Bitcoin library for Android, implemented on Kotlin. Complete SPV wallet implementation for Bitcoin, Bitcoin Cash and Dash blockchains. - horizontalsystems/bitcoin-kit-android


Bitcoin protocol toolkit for Swift. Contribute to yenom/BitcoinKit development by creating an account on GitHub.


Bitcoin Wallet app for your Android device. Standalone Bitcoin node, no centralized backend required. - bitcoin-wallet/bitcoin-wallet


Full Bitcoin library for iOS, implemented on Swift. SPV wallet implementation for Bitcoin, Bitcoin Cash and Dash blockchains. - horizontalsystems/bitcoin-kit-ios


🚧 Wordpress


🚧 Liquid Elements - an open source, sidechain-capable blockchain platform.

Blockstream/liquid Liquid daemon and cli. Contribute to Blockstream/liquid development by creating an account on GitHub.


Getting started with the Liquid Network

Getting started with Lighning on the Liquid Network

🚧 Rootstock

RSK, bitcoin´s smart contract platform.


Can someone show me an example rootstock smart contract that is th…

Coming from Ethereum, is there an example rootstock smart contract code that is the equivalent of an Ethereum smart contract code?


Tutorials about how to get started coding for RSK. Contribute to rsksmart/tutorials development by creating an account on GitHub.

#rsk #rootstock Is still planning to introduce a security flaw they call “drive chains” If they get enough fools to put bitcoin on this flawed side chain it will resulting a massive theft of #bitcoin Defend bitcoin by alerting people of the …

⧉ Libraries

🏗 Java-scala


XChange is a Java library providing a streamlined API for interacting with 60+ Bitcoin and Altcoin exchanges providing a consistent interface for trading and accessing market data. - knowm/XChange

bitcoin-s · Bitcoin implementation in Scala bitcoin-s/bitcoin-s

Bitcoin Implementation in Scala. Contribute to bitcoin-s/bitcoin-s development by creating an account on GitHub. bitcoinj/bitcoinj

A library for working with Bitcoin. Contribute to bitcoinj/bitcoinj development by creating an account on GitHub.


A scala implementation of the Lightning Network.

🏗 Javascript


Useful crypto coins JavaScript libraries. Contribute to cryptocoinjs/awesome-cryptocoinjs development by creating an account on GitHub.


A full stack for bitcoin and blockchain-based applications

bitcoinjs bitcoinjs/bitcoinjs-lib


CryptoCoinJS Bitcoin and Crypto Currency JavaScript Library


BlockTrail’s Developer Friendly NodeJS SDK for the BlockTrail API


Javascript bitcoin library for node.js and browsers


《Node.js区块链开发》(网名《Nodejs开发加密货币》),纸质书籍和在线培训已经全部开启. Contribute to imfly/bitcoin-on-nodejs development by creating an account on GitHub.


A BIP32 compatible library. Contribute to bitcoinjs/bip32 development by creating an account on GitHub.


An external bitcoind index management service module - bitcoinjs/indexd

🏗 Python


Python BlockTrail’s Developer Friendly SDK for the BlockTrail API



I simple library to store/retrieve information in bitcoin transactions using OP_RETURN - F483/btctxstore


SImple, common-sense Bitcoin-themed Python ECC library - vbuterin/pybitcointools


Python-based Bitcoin and alt-coin utility library. - richardkiss/pycoin


Python Bitcoin tools. Contribute to sr-gi/bitcoin_tools development by creating an account on GitHub.


Various ipython notebooks. Contribute to julienr/ipynb_playground development by creating an account on GitHub.


Bitcoin made easy. Contribute to ofek/bit development by creating an account on GitHub.


A Python3 SegWit-compliant library which provides tools to handle Bitcoin data structures in a simple fashion. - chainside/btcpy


transactions: Bitcoin for humans.

🏗 Net-libraries


Comprehensive Bitcoin library for the .NET framework. - MetacoSA/NBitcoin


Bitcoin Core RPC compatible, battle-tested .NET library and RPC wrapper for Bitcoin and Altcoins - cryptean/bitcoinlib


🏗 Ruby


bitcoin utils and protocol in ruby. Contribute to lian/bitcoin-ruby development by creating an account on GitHub.

🏗 Golang


Full bitcoin solution written in Go (golang). Contribute to piotrnar/gocoin development by creating an account on GitHub.

🏗 C++


Useful primitives for wallets.


Optimized C library for EC operations on curve secp256k1 - bitcoin-core/secp256k1



Simple PHP commands and library for using bitcoin OP_RETURNs.


BlockTrail’s Developer Friendly PHP SDK for the BlockTrail API


🏗 Rust


A Rust Bitcoin blockchain parser with clustering capabilities, allowing to group together addresses in ownership clusters. Please contact @mikispag if interested in using BitIodine for any real-wor…


Bitcoin Core RPC compatible, battle-tested .NET library and RPC wrapper for Bitcoin and Altcoins


Bitcoin software suite. Contribute to tomasvdw/bitcrust development by creating an account on GitHub.

⧉ Data

bitdb - The Random Access Memory for Bitcoin


A high performance data transfer tool that can be used to transfer data from Bitcoin Core blockchain files to a SQL Server database - ladimolnar/BitcoinDatabaseGenerator


Fast, quick and dirty bitcoin blockchain parser.


Abe: block browser for Bitcoin and similar currencies - bitcoin-abe/bitcoin-abe


Scalable and fault-tolerant block chain indexer for Azure cloud platform.

straumat/blockchain2graph Blockchain2graph extracts blockchain data (bitcoin) and insert them into a graph database (neo4j). - straumat/blockchain2graph

Historical tick-level cryptocurrency market data replay API

High precision raw historical data for cryptocurrency markets — full order book depth snapshots and incremental updates, tick-by-tick trades, quotes, liquidations and more available via HTTP and WebSocket API. BitMEX, Binance, Deribit, Bitfinex, Bitstamp, Crypto Facilities,…


Hadoop Crypto Ledger - Analyzing CryptoLedgers, such as Bitcoin Blockchain, on Big Data platforms, such as Hadoop/Spark/Flink/Hive - ZuInnoTe/hadoopcryptoledger


Superfast blockchain parser for stats.



A Compact SQL Layer Over The Blockchain. . Contribute to neocogent/sqlchain development by creating an account on GitHub.


blkchain/blkchain Fast import of the blockchain into PostgreSQL.


Tools for exporting blockchain data to analytical databases - coinmetrics-io/haskell-tools


Python Bitcoin tools. Contribute to sr-gi/bitcoin_tools development by creating an account on GitHub.



Bitcoind chainstate UTXOs to CSV. Contribute to proger/utxo-dump development by creating an account on GitHub.


Data Analysis for bitcoin utxo using leveldb tool library - qshuai/utxo-stats


Bitcoin UTXO extractor and calculation of the balance of each address. - ragestack/Bitcoin-UTXO-extractor


A tiny API to explore unspent bitcoin transactions

📊 trading


A JavaScript / Python / PHP cryptocurrency trading API with support for more than 120 bitcoin/altcoin exchanges - ccxt/ccxt


A bitcoin trading bot written in node


阿布量化交易系统(股票,期权,期货,比特币,机器学习) 基于python的开源量化交易,量化投资架构 - bbfamily/abu


Blackbird Bitcoin Arbitrage: a long/short market-neutral strategy


A high frequency, market making cryptocurrency trading platform in node.js - michaelgrosner/tribeca


Free, open source crypto trading bot. Contribute to freqtrade/freqtrade development by creating an account on GitHub.


฿ Bitcoin trading bot with a real-time dashboard for Bitstamp.


Terminal dashboard for Bitcoin trading, forecasting, and charting - shobrook/BitVision


Cryptocurrency exchange market data feed handler.


A cryptocurrency arbitrage opportunity calculator. Over 800 currencies and 50 markets. - manu354/cryptocurrency-arbitrage


R2 Bitcoin Arbitrager is an automatic arbitrage trading system powered by Node.js + TypeScript. - bitrinjani/r2


Bitcoin investing using Dollar Cost Averaging. Contribute to 0x13a/bitcoin-trading-dca development by creating an account on GitHub.


Simple cryptocurrency price and portfolio monitor for macOS - lionsharecapital/lionshare-desktop


Deep Reinforcement Learning based Trading Agent for Bitcoin - samre12/deep-trading-agent


Exploiting Bitcoin prices patterns with Deep Learning. - philipperemy/deep-learning-bitcoin


Bitcoin price prediction algorithm using bayesian regression techniques - panditanvita/BTCpredictor


Predict bitcoin price with deep learning. Contribute to PiSimo/BitcoinForecast development by creating an account on GitHub.


BTC trading market broker, smart route the orders to multiple exchange. - philsong/bitcoin-broker


Bayesian regression for latent source model and Bitcoin - stavros0/bitcoin-price-prediction


Machine learning models for time series analysis. Contribute to maxim5/time-series-machine-learning development by creating an account on GitHub.


Predicting Bit coin price using Time series analysis and sentiment analysis of tweets on bitcoin - harishpuvvada/BitCoin-Value-Predictor


Crypto currency trading bot written in TypeScript for NodeJS - Ekliptor/WolfBot


A simple php powered Bitcoin and Ethereum trading bot - chrisiaut/phptrader


Bitcoin chart for the terminal as command line util - madnight/bitcoin-chart-cli


Free trading strategies for Freqtrade bot. Contribute to freqtrade/freqtrade-strategies development by creating an account on GitHub.


Self-hosted crypto trading bot (automated high frequency market making) in node.js, angular, typescript and c++ - ctubio/tribeca


An application that let you set alerts for the prices of several cryptocurrencies - AlexITC/crypto-coin-alerts


OpenAI Gym Environment API based Bitcoin trading environment - samre12/gym-cryptotrading


Bitcoin Arbitrage utilities. Contribute to jr-minnaar/bitrader development by creating an account on GitHub.


Powerful cryptocurrency market analysis toolkit. Contribute to libcryptomarket/libcryptomarket development by creating an account on GitHub.


XTrader is a robot for cryptocurrency trading on exchange platform.

📊 Chainanalysis


Bitcoin Code Written for Long Chain Analysis. Contribute to animeshbchowdhury/bitcoinCodeRepos development by creating an account on GitHub.


Tool to search for arbitrary data in bitcoin blockchain - tomasvanagas/ArbitraryDataInBitcoin


A high-performance tool for blockchain science and exploration - citp/BlockSci


Searches for hidden files in local blockchain .DAT files. - spooktheducks/local-blockchain-parser


Analysis tool for the bitcoin blockchain. Contribute to himahimahima/chain-analysis development by creating an account on GitHub.

ga245004/blocked bitcoin blockchain analysis.

📊 Google Sheets