Assignment 1 — ERC20 + NFT + Uniswap¶
Goal¶
Deploy smart contracts to Ethereum Sepolia and interact with them.
Tasks¶
- Set up MetaMask and obtain Sepolia test ETH.
- Deploy an ERC20 token using Remix and OpenZeppelin.
- Deploy an NFT contract, preferably ERC721 or ERC1155 depending on instructor requirements.
- Mint tokens/NFTs to your wallet.
- Interact with Uniswap on Sepolia: swap, create a pool, or add liquidity as required.
- Record all contract addresses and transaction hashes.
Recommended tools¶
- https://remix.ethereum.org/
- https://sepolia.etherscan.io/
- https://app.uniswap.org/swap?chain=sepolia
- https://cloud.google.com/application/web3/faucet/ethereum/sepolia
- https://sepolia-faucet.pk910.de/
Deliverables¶
| Item | Required evidence |
|---|---|
| ERC20 deployment | contract address + deployment tx |
| NFT deployment | contract address + deployment tx |
| Token/NFT mint | tx hash |
| Uniswap interaction | swap / pool / liquidity tx hash |
| Wallet address | public Sepolia address |
AI usage¶
Allowed: using AI to explain Solidity syntax, Remix errors, and transaction fields.
Not allowed: submitting code or reports you cannot explain orally.
Reporting JSON¶
In addition to the normal deliverables, add a submission.json file to the root of your GitHub repository.
Use the common format described in JSON Submission Format. This allows the instructor or checker script to verify wallet addresses, contract addresses, transaction hashes, links, and completion status automatically.