A curated, opinionated path from zero to shipping production smart contracts. Every stage links to a concept explainer on Blockchain Lab, the primary docs, a hands-on lab you can run, and a free tool to check your work.
Built by Blockchain Lab — blockchainlab.com · All links are checked weekly in CI.
Stage 0 Foundations ──► 1 Ethereum & the EVM ──► 2 Solidity ──► 3 Testing & tooling
──► 4 Token standards ──► 5 DeFi primitives ──► 6 Security ──► 7 Upgrades & storage
──► 8 Scaling (L2s) ──► 9 Frontend & indexing ──► 10 Other ecosystems ──► 11 Zero knowledge ──► 12 Ship
Learn what a blockchain does and what it doesn't do before you write code.
- Concepts: hash · Merkle tree · public key / private key · consensus · proof of work vs proof of stake (compare) · finality
- Read the source: Bitcoin whitepaper · Ethereum whitepaper · the full whitepaper library and Blockchain canon
- Fast overview: Blockchain in 60 minutes · Fundamentals · Glossary
- Book: Mastering Bitcoin · Mastering Ethereum
- Tool: hash things yourself → keccak / sha256 / Merkle
- Docs: ethereum.org developer docs · opcodes at evm.codes
- Concepts: smart contract · virtual machine · wallet · gas and EIP-1559
- Tools: gas estimator · unit converter · tx decoder (decode a real mainnet tx and explain every field)
- Protocol profiles: Ethereum · Protocol atlas
- Docs: Solidity docs
- Labs: 01 storage · 02 events & errors · 03 access control · 08 holding ETH · 10 arithmetic
- Tool: ABI encoder/decoder & selectors
- Foundry (repo) — default choice in 2026 · Hardhat · ethers v6 · viem
- Labs: 27 fuzzing · 28 invariants · 29 mainnet fork · H1 Hardhat
- OpenZeppelin Contracts 5.x · search every ERC in the EIP/ERC reference
- Labs: 04 ERC-20 from scratch · 05 OZ ERC-20 · 06 ERC-721 · 07 ERC-1155 · 12 permit / EIP-712 (EIP-2612, EIP-712) · vaults: ERC-4626
- Concepts: tokenisation · real-world assets · stablecoins (algorithmic vs reserve)
- Labs: 21 constant-product AMM · 22 flash loans · 20 staking rewards · 17/18 auctions · 11 Merkle airdrop
- Read real protocols: Uniswap docs · Aave developer docs · Chainlink docs (oracles)
- Data: DefiLlama · Blockchain Lab Open Data API — protocols TVL
- Staking: liquid staking · restaking · native vs liquid vs restaking
- Labs: 09 reentrancy attack + fixes · 13 signature replay · 16 commit-reveal / front-running
- Practice: Ethernaut · Damn Vulnerable DeFi
- Tools & knowledge: Slither · Halmos · Building Secure Contracts · Solodit findings · Rekt leaderboard
- Learn from failures: Failure atlas · Smart-contract security assurance
- MEV: Flashbots docs
- Labs: 23 UUPS + ERC-1967 · 24 ERC-7201 namespaces · 25 storage layout · 26 gas · 30 CREATE2
- Specs: storage layout · EIP-1967 · ERC-7201
- Tool: storage-slot calculator + live reads · address inspector (proxy implementation)
- Concepts: rollups · data availability · bridges · plasma vs rollups · Lightning vs on-chain
- Docs: ethereum.org scaling · OP Stack · Arbitrum · Base · risk dashboards on L2BEAT
- Account abstraction: ERC-4337 · EIP-7702
- Tool: compare live fees across L1/L2s → gas estimator · chainlist
- wagmi · viem · MetaMask docs · WalletConnect / Reown
- Indexing: The Graph
- Free data for your app: Blockchain Lab Open Data API · let AI agents use it via blockchainlab-mcp
- Solana: docs · Anchor · profile
- Bitcoin: developer docs · profile
- Cosmos: Cosmos SDK docs · Cosmos vs Polkadot · Tendermint
- Concepts: zero-knowledge proofs · STARK vs SNARK
- Build: Noir · resources at zkp.science
- Hackathons: ETHGlobal · Devpost · the live Blockchain Lab hackathons feed and tracker
- Funding: grants directory (22 programmes, link-checked nightly)
- Interview prep: blockchain-interview-questions
- Ideas: What should I build? · Constructor
- Guided courses: Speedrun Ethereum · CryptoZombies
| Track | Start here |
|---|---|
| Custody & wallets | custody · MPC · multisig · HSM · MPC vs multisig vs HSM |
| Stablecoins & payments | stablecoins · vs tokenised deposits · settlement · CBDC |
| Identity | DID · verifiable credentials · KYB |
| AI agents onchain | agent wallets · AI agents intelligence · blockchainlab-mcp |
| DePIN | DePIN |
| Validators | validator · slashing |
For AI agents and builders: read
AGENTS.md(setup, commands, structure, rules),llms.txt(doc map) and the machine-readableblocks.json(schema). How all Blockchains blocks fit together: Build with Blocks · org catalogue: https://blockchains.github.io/blocks.json.
What it exports
| Export | Type | Install / access |
|---|---|---|
README.md |
file | https://raw.githubusercontent.com/Blockchains/blockchain-dev-roadmap/main/README.md |
Minimal example
curl -s https://raw.githubusercontent.com/Blockchains/blockchain-dev-roadmap/main/README.md | grep '^## Stage'Inputs → outputs
- In: none
- Out:
stages(Markdown) each item links to a lab, a tool or a Blockchain Lab explainer
Composes with
- Blockchains/blockchainlab-labs: hands-on labs linked from each item
- Blockchains/blockchainlab-tools: tools linked from each item
- Blockchains/blockchain-interview-questions: companion guide
Versioning & stability: stable. Content is revised in place; headings/anchors are kept stable so deep links keep working.
PRs welcome. Rule of the repo: every resource must be free to access, primary or clearly best-in-class, and must pass the link checker.
Text CC BY 4.0 (attribute Blockchain Lab), code MIT. See LICENSE.
Issues and pull requests are welcome. Please read the contributing guide, code of conduct and security policy first.
Built by Blockchain Lab — blockchainlab.com · More paths: Learning paths
