INTERMEDIATE · Course

Smart Contracts

Write and deploy smart contracts on Ethereum with Solidity. Ship your first contract on testnet.

Topic 1 of 5

Solidity Basics

Solidity is a statically-typed language for writing Ethereum smart contracts. Key concepts: pragma version, contract keyword, state variables, functions, modifiers, and events.

Topic 2 of 5

ERC-20 & ERC-721 Tokens

ERC-20 defines a standard interface for fungible tokens (like USDC). ERC-721 defines non-fungible tokens (NFTs). Both use standard function signatures so wallets and dApps can interact with any compliant contract.

Topic 3 of 5

DeFi Concepts

DeFi protocols use smart contracts to recreate financial services: AMMs (Uniswap) replace order books with liquidity pools, lending protocols (AAVE) use collateral and interest rates, and yield farming compounds returns across protocols.

Topic 4 of 5

Contract Security

Common vulnerabilities: reentrancy attacks (always update state before external calls), integer overflow (use SafeMath or Solidity 0.8+), access control (use onlyOwner modifiers), and flash loan attacks.

Topic 5 of 5

Deploy on Testnet

Use Remix IDE or Hardhat to compile your contract. Deploy to Sepolia testnet using MetaMask with free test ETH from a faucet. Verify your contract on Etherscan to make the source code public.

Other Tracks

Keep Learning

ChainSources App Icon

Get ChainSources on Android

Learn blockchain on the go — free on Google Play.

Get it on Google Play