A minimal blockchain built with Python and Flask, written for learning rather than production. It covers the essentials end to end: blocks, hashing, proof of work, transactions, and consensus between nodes.
You can spin up multiple nodes locally on different ports and watch them sync chains and resolve conflicts. That's where blockchain concepts actually click:
python blockchain.py # node 1 on :8000
python blockchain.py -p 8001 # node 2
python blockchain.py -p 8002 # node 3
The full walkthrough is on Medium.