RoadmapsProjects
Sign in./start

Learn

RoadmapsProjects

Contribute

DiscoverIssues

Account

Sign in./start-building

Become an Open Source Builder. Learn. Build. Contribute.

Learn

RoadmapsProjectsStart Building

Contribute

DiscoverIssues

Account

Sign inDashboardSettings

Legal

PrivacyTerms

© 2026 Pull // all rights reserved

PrivacyTerms

lesson // bitcoin

Mini Wallet Project

Build a CLI wallet that generates addresses, receives, and sends on regtest.

intermediate2 weeksproject // mini-wallet

Public lesson — sign in to track progress on this roadmap.

./sign-in

On this page

Learning objectives

  • Generate receive addresses from a descriptor or HD wallet
  • Track UTXOs and build a funded transaction on regtest
  • Sign and broadcast with tests covering change and fees

study // plan

Lessons are primers. Depth comes from required reading, interactive labs, reflection, and a hands-on check with evidence — the BOSS study pattern.

Research on Bitcoin Search

Required reading

  • bookMastering Bitcoin

    Ch. 5: Wallets

Reflection prompts

  1. Explain Mini Wallet Project to a teammate without jargon — what problem does it solve?
  2. What would break in production if you misunderstood Mini Wallet Project?
  3. Which BIP, book chapter, or Core doc is authoritative here, and what did you verify?

Lab // Project milestone evidence

For Mini Wallet Project, complete the linked project spec happy path on regtest/Polar and capture demo evidence before marking the lesson complete.

evidence required

  • ·Link to public repo or branch
  • ·Commands or screenshots proving the happy path
  • ·Short note of one failure case you tested

This project turns protocol lessons into a working tool: a command-line wallet on regtest that can receive and send bitcoin.

Build challenge

Ship a CLI that can:

  1. Create or load a wallet (seed/descriptor)
  2. Show a receive address and balance
  3. Send to an address with an explicit fee rate
  4. Mine/confirm via Bitcoin Core RPC in tests

Loading diagram…

CLI drives wallet logic against a local regtest node.

Acceptance tests first

Write a test that mines funds to your wallet, sends half to a second wallet, and asserts balances after one block.

Suggested milestones

  • Week 1: address generation + sync/balance
  • Week 2: coin selection, change, broadcast, fee unit tests

Next steps

After the wallet works, visualize the chain with a Block Explorer UI project.

further reading

  • docsProject Spec, Mini Wallet

    Follow the Pull project spec in content/projects/specs.

  • docsBDK

build // challenge

project // mini-wallet

Apply what you learned in a focused build session. Ship something small, test it on regtest, and document your approach before moving on.

progress // sign in

Reading is public. Sign in to mark lessons complete, sync across devices, and unlock your roadmap.

./sign-in-to-track
prevPSBT WorkflowsnextBlock Explorer UI

On this page

Press Shift + ? for keyboard shortcuts.

Press R to research on Bitcoin Search.