Start from the prehistory of digital money. Build a cryptocurrency from scratch in Node.js. Deploy Solidity smart contracts on Ethereum. Set up a private enterprise network.
Each part builds on the previous. No shortcuts β but the payoff is real.
Understand why Bitcoin was invented and how it works at every layer β cryptography, consensus, mining, P2P networking.
Write, test, and deploy production-quality Solidity contracts. Build a full-stack DApp with a Node.js frontend.
Apply the same Solidity skills to private networks. Understand the enterprise landscape β and why it exists.
Start from Module 0 β each module ends with a hands-on exercise in Node.js or Solidity.
Read a live Bitcoin transaction on mempool.space. By the end of this course you'll understand every byte.
From Chaumian ecash to HashCash. Why every previous attempt failed and what Bitcoin did differently.
Hash functions, asymmetric keys, digital signatures, Merkle trees β explained practically in Node.js.
Implement GoofyCoin β ScroogeCoin β decentralise it. Hands-on with Node.js crypto module.
P2P networks, gossip protocol, Nakamoto consensus, forks, 51% attack. Build a P2P node simulation.
Gossip protocol, SPV nodes, BIPs, hard/soft forks. The Ethereum Merge explained.
Part 1 capstone: balance-based blockchain from scratch in JS. Mining competition, visual explorer, AI agent, Docker.
Open companion to the capstone: connect your client to a live shared blockchain and compete on the leaderboard. Any language, no grading.
Why Bitcoin's scripting language isn't enough. EVM, gas, accounts (EOA vs contract), Wei/Gwei/ETH.
Types, functions, visibility, events, modifiers. Build and deploy a Counter contract in Remix.
Mappings, structs, inheritance, custom errors. Build a Voting contract from scratch.
Token standards, OpenZeppelin v5, deploy your own ERC-20 on Remix then Sepolia.
Move from Remix to a real project: Hardhat v3, Ignition, TypeScript config, local devnet.
TypeScript tests with viem. describe/it patterns you already know. Test the ERC-20.
Connect a wallet, read state, write transactions, listen to events. Pure HTML/JS β no framework needed.
Reentrancy (The DAO hack), tx.origin, overflow, oracle manipulation. Run Slither on your code.
Hardhat Ignition, Etherscan verification, Layer 2 landscape (Arbitrum, Base, zkSync, Starknet).
A self-contained companion to Part 2: MetaMask, Sepolia, Etherscan, Remix, payable functions, bytecode & ABI. Build and deploy a Donation Pool DApp β anyone donates ETH toward a target, only the named beneficiary can withdraw once it's met. Wired to ethers.js v6.
Builds directly on Lab 1. A two-phase ticket economy in one contract: primary sale routes ETH to the organiser, peer-to-peer resale routes ETH to the current ticket owner. Per-asset ownership via mappings, the listing-price sentinel pattern, CEI when the recipient is a counterparty, and a multi-action ethers.js v6 marketplace UI.
A dedicated landing for everything Solidity & ethers.js on this site: a standalone Solidity Quick Reference (every keyword the labs touch, with examples), a suggested learning path, and shortcuts into Lab 1 (Donation Pool) and Lab 2 (Ticketing Marketplace).
Privacy, compliance, finality, identity. The decentralisation trilemma revisited for enterprises.
Hyperledger Besu, Fabric, R3 Corda, Avalanche L1s. Positioning matrix: choose the right tool.
Spin up a 4-node QBFT network with Docker Compose. Deploy the ERC-20 from Part 2. Same code, different network.
Peers, orderers, channels, MSP, chaincode. Endorsement policies. When Fabric beats Besu.
TradeLens autopsy, CBDC pilots, ZK proofs, ERC-4337, AI agents owning wallets. Career paths.
Build a blockchain + AI system: 4 smart contracts, Node.js backend with RAG, and a DApp frontend. Covers all 3 parts.
All free, all current, all used in the industry in 2026.
Module 0 takes 30 minutes. Youβll read a real Bitcoin transaction live.
Start with Module 0