Mastering Bitcoin Core from the Command Line

A hands-on course teaching developers how to use bitcoind, bitcoin-cli, and regtest to build, test, and simulate Bitcoin applications using Bitcoin Core.

Updated iconLast updated 05/2025
Language iconEnglish
Bitcoin

What You'll Learn

Run your own Bitcoin Core node with confidence, learning how to set up, configure, and maintain a secure and efficient local or testnet environment.

Leverage regtest to create isolated Bitcoin networks, mine blocks instantly, and test apps safely without risking real funds.

Create and manage wallets and addresses (Bech32, legacy) while understanding their differences and practical use cases in your apps.

Build, sign, and broadcast raw Bitcoin transactions directly from the command line, giving you full control over UTXO selection and fees.

Explore and inspect blockchain data, UTXOs, mempool state, and block details using precise commands to debug and monitor Bitcoin activity.

Write Bash or Python scripts to automate regtest environments and Bitcoin workflows, making your development and testing seamless.

iconCourse Modules

8 modules . 1h 25m total length

Module 1: Installing & Running Bitcoin Core

Expand
  • Downloading from official sources
  • Verifying binary signatures (optional)
  • Setting up bitcoin.conf for regtest or testnet
  • Running bitcoind as a daemon
  • Basic node health checks

Module 2: Bitcoin Core Architecture

Expand
  • What is a full node?
  • bitcoind vs bitcoin-cli
  • Datadir, blocks, mempool, wallets
  • Permissioning and RPC ports

Module 3: Wallets and Addresses in Bitcoin Core

Expand
  • Creating and loading wallets
  • Generating new addresses
  • Watching vs active wallets
  • Bech32 and legacy formats
  • Labeling addresses

Module 4: Using Regtest to Simulate Bitcoin

Expand
  • Why regtest matters
  • Setting up a fully isolated Bitcoin environment
  • Mining blocks instantly
  • Sending transactions instantly

Module 5: Transactions and UTXO Control

Expand
  • UTXO model explained using listunspent
  • Funding transactions manually
  • Creating, signing, broadcasting raw transactions
  • Decoding transactions with decoderawtransaction

Module 6: Blocks and Blockchain State

Expand
  • Reading block data with getblock, getblockheader, getchaintips
  • Chain re-orgs in regtest
  • Understanding confirmations and depth
  • Inspecting mempool transactions

Module 7: Working with Bitcoin RPC

Expand
  • Using bitcoin-cli vs curl RPC calls
  • Reading/writing raw JSON requests
  • Authentication (cookie, rpcuser)
  • Securing RPC on real nodes

Module 8: Developing with Bitcoin Core Locally

Expand
  • Building testing environments for apps using regtest
  • Writing integration scripts in Bash, Python
  • Mocking confirmations and network events
  • Production notes: when to use a pruned node, when to separate wallet/node

iconCapstone Project

You will create a command-line tool that:

1

Spins up a regtest node

2

Mines 101 blocks instantly

3

Creates a wallet and sends Bitcoin to two addresses

4

Confirms the transaction

5

Outputs the full transaction hex and decoded data


iconFinal Quiz + Completion

You will create a command-line tool that:

15–20 technical questions to test your knowledge

3 scenario challenges to apply what you’ve learned (e.g. “What happens if you send a tx with 0 fee on regtest?”)


iconCompletion Outcome

By the end of this course, you’ll be able to:

Operate and inspect Bitcoin Core via CLI with confidence.

Simulate Bitcoin payments safely in regtest.

Build, sign, and broadcast raw transactions manually.

Use regtest as a sandbox for developing Bitcoin apps.


Share on
Share on FacebookShare on XShare on LinkedIn
Did you find this page useful?