This is my repository for the "Blockchain, Solidity, and Full Stack Web3 Development with JavaScript" course by Patrick Collins on FreeCodeCamp.org.
-
Lesson 5: Ethers.js Simple Storage -> Code Folder
Ethers.js Simple Storage focuses on using Ethers.js to interact with Ethereum smart contracts, covering debugging strategies, setup, contract importing, asynchronous programming, compiling Solidity, Ethers.js usage, private key management, deployment, and Mempool insights. -
Lesson 6: Hardhat Simple Storage -> Code Folder
Usage of Hardhat for Ethereum smart contract development, covering topics such as setup, deployment, network configuration, interacting with contracts, custom tasks, testing, gas reporting, Solidity coverage, and TypeScript integration. -
Lesson 7: Hardhat Fund Me -> Code Folder
Development of the "Fund Me" project using Hardhat, covering setup, linting, deployment, mocking, TypeScript, Solidity style guides, testing, debugging, gas optimizations, Chainlink integration, storage review, staging tests, and GitHub usage. -
Lesson 8: HTML / JavaScript Fund Me (Full Stack / Front End) -> Code Folder
Development of a full-stack web application for fundraising using HTML and JavaScript, focusing on connecting smart contracts to MetaMask, HTML setup, JavaScript organization, transaction handling, Metamask error handling, event listening, and user input forms. -
Lesson 9: Hardhat Smart Contract Lottery -> Code Folder
Building a smart contract lottery system using Hardhat, covering setup, custom Solidity errors, events, Chainlink VRF integration, Chainlink Keepers, deployment, unit testing, and special debugging techniques. -
Lesson 12: Hardhat ERC20s -> Code Folder
ERC20 tokens in Ethereum, covering their definition, the Ethereum Improvement Proposal (EIP) standards, ERC-20, ERC-677, EIP-777, and the manual creation of ERC20 tokens as well as using OpenZeppelin for ERC20 token creation. -
Lesson 13: Hardhat DeFi & Aave -> Code Folder
DeFi (Decentralized Finance) and Aave, covering the fundamentals of DeFi, an introduction to Aave, programmatic borrowing and lending with assets like DAI, Uniswap, and WETH, forking the mainnet, depositing and borrowing from Aave, health factors, risk parameters, and repaying using Aave, along with visualizing transactions and aTokens. -
Lesson 14: Hardhat NFTs -> Code Folder
NFTs (Non-Fungible Tokens), including their definition, EIP-721 standard, code overview, setting up NFTs with Hardhat, creating basic and random IPFS NFTs, mapping Chainlink VRF requests, generating rare NFTs, handling token images and URIs with Pinata (NFT Storage), and creating dynamic SVG on-chain NFTs with advanced encoding techniques. -
Lesson 16: Hardhat Upgrades -> Code Folder
Upgradable smart contracts in-depth, covering various types of upgrades, including parameter, proxy, metamorphic, and transparent upgrades, and learn about important concepts such as delegatecall and EIP 1967. -
Lesson 17: Hardhat DAOs -> Code Folder
Decentralized Autonomous Organizations (DAOs), learning what they are, how to build one, and examining related concepts and tools. -
Lesson 18: Security & Auditing -> Code Folder / Info
Security & Auditing, the critical aspects of security and auditing in Ethereum smart contract development, covering tools like Slither, Echidna, and best practices while exploring potential vulnerabilities and attacks.
Full course at: Watch here