A minimal Bitcoin-inspired implementation

I wanted to learn crypto. I read a lot of posts. I got overwhelmed. The list of buzzwords was long and unending - proof-of-work, Merkle trees, elliptic curves, smart contracts, DeFi, DAOs, NFTs, ZK-rollups. I switched gears, and started building a prototype based on what I picked up so far.

The basic idea is to take Bitcoin core concepts and design a new cryptocurrency from scratch. We'll build iteratively to help make clear where each component fits into the bigger picture.

Disclaimer: For educational purposes only.

If you're curious what the end result looks like, a sample run can be seen here. If you prefer a Jupyter notebook version, identical content can be read here. The Github repo is here.

Special thanks to Andreas Antonopoulos, Daniel van Flymen, Andrej Karpathy and Taro Kuriyama for their posts! The Bitcoin white paper and developer guide are respectively here and here.