A rigorous, project-driven curriculum for building and deploying smart contracts on the Ethereum blockchain. By Week 6, you will have written, tested, audited, and deployed real smart contracts — with a portfolio of six on-chain projects proving your ability to build trustless, decentralised applications.
Highlights
Class 1 — How Blockchains Work
Class 2 — Ethereum & the EVM
Class 3 — Solidity Basics
Portfolio Project — Deployed Counter & Storage Contract
Write, test, and deploy two foundational Solidity contracts to the Sepolia testnet: a Counter contract (increment, decrement, reset, get) and a SimpleStorage contract (store any uint, retrieve it, emit an event on change). Verify both contracts on Etherscan so the source code is publicly readable. Delivered as a GitHub repository with README, testnet transaction links, and Etherscan verification links.
Class 1 — Data Structures & Control Flow
Class 2 — Events, Errors & Modifiers
Class 3 — Contract Interactions & Ether Handling
Portfolio Project — On-Chain Voting Contract
Build and deploy a complete voting system smart contract. Features: an owner who registers candidates and opens/closes voting, a mapping of addresses to votes (one vote per address enforced), events emitted on every vote cast, custom errors for invalid actions (already voted, voting closed, invalid candidate), and a function returning the current winner. Deployed to Sepolia, verified on Etherscan, full test suite written in Hardhat.
Class 1 — Hardhat Development Environment
Class 2 — Writing a Professional Test Suite
Class 3 — Scripts, Deployment & Verification
Portfolio Project — Fully Tested & Deployed Escrow Contract
Build a three-party escrow contract: a depositor locks ETH, an arbiter approves or rejects release to a beneficiary, with a timeout that allows the depositor to reclaim funds if the arbiter goes silent. Written in Hardhat, tested with 100% line coverage including all failure modes, deployed to Sepolia via a deployment script, and verified on Etherscan. Delivered as a professional GitHub repository with a full README documenting the contract's logic and deployment instructions.
Class 1 — The ERC-20 Token Standard
Class 2 — The ERC-721 NFT Standard
Class 3 — OpenZeppelin & Extending Standards Safely
Portfolio Project — ERC-20 Token + NFT Collection
Deploy two token contracts: a custom ERC-20 token (your own name, symbol, supply, with mint and burn functionality) and an ERC-721 NFT collection (minimum 5 unique NFTs with metadata and images uploaded to IPFS via Pinata, tokenURI returning live IPFS links). Both built with OpenZeppelin, tested in Hardhat, deployed to Sepolia, and verified on Etherscan. Import your ERC-20 token into MetaMask and mint an NFT from your collection to demonstrate it working end to end.
Class 1 — DeFi Primitives & Common Patterns
Class 2 — Smart Contract Security
Class 3 — Audit Methodology & Tools
Portfolio Project — Staking Contract with Security Audit Report
Build a staking contract: users deposit your Week 4 ERC-20 token, earn rewards over time proportional to their stake, and can withdraw at any time. Apply every security pattern from this week: Checks-Effects-Interactions, reentrancy guards, access control, and integer safety. Run Slither and Mythril against the contract, fix every finding, and write a one-page security audit report documenting what was found, what was fixed, and what risk remains. Deployed to Sepolia, verified on Etherscan.
Class 1 — Connecting Smart Contracts to a Frontend
Class 2 — IPFS, Wallets & dApp UX
Class 3 — Capstone Build & Deployment
Define a real problem and build a complete decentralised application to solve it. A decentralised marketplace, an on-chain DAO voting system, a token-gated community platform, an NFT minting site with royalties, a crowdfunding protocol — anything that demonstrates a non-trivial smart contract system connected to a working frontend.
A deployed contract on Sepolia or mainnet and a live frontend URL are required to complete the course.
Required:
| Week | Project | Output |
|---|---|---|
| Week 1 | Counter & Storage Contracts | Deployed · Etherscan Verified |
| Week 2 | On-Chain Voting Contract | Deployed · Full Test Suite |
| Week 3 | Escrow Contract | Hardhat · 100% Test Coverage |
| Week 4 | ERC-20 Token + NFT Collection | Tokens Live · IPFS Metadata |
| Week 5 | Staking Contract + Audit Report | DeFi Contract · Security Report |
| Week 6 | Full Stack dApp | Live Frontend · Live Contract |
You finish the course with six verified on-chain deployments, a security audit report, a live dApp, and a GitHub profile showing real smart contract work that any Web3 employer or client can inspect.
Every project in this course is deployed to a live public testnet. There are no toy exercises that stay on localhost. From Week 1, your work is real, public, and verifiable — the standard the Web3 industry expects.
Reentrancy, access control, integer safety, and the Checks-Effects-Interactions pattern are introduced in Week 2 and reinforced every week after. Smart contract bugs cannot be patched. This course treats security as a habit built from the beginning, not a checklist at the end.
Week 4 teaches ERC-20 and ERC-721 by writing them from scratch first — then using OpenZeppelin. Understanding what OpenZeppelin is doing before using it is the difference between a developer who can debug a token contract and one who cannot explain what transferFrom does.
The capstone is a dApp with a real frontend, not just another contract. Web3 developers who can only write Solidity are only half-useful. Week 6 closes the loop between on-chain logic and the interface real users actually interact with.