Learn Blockchain, Solidity, and Full Stack Web3 Development with JavaScript – 32-Hour Course

preview_player
Показать описание
This course will give you a full introduction into all of the core concepts related to blockchain, smart contracts, Solidity, ERC20s, full-stack Web3 dapps, decentralized finance (DeFi), JavaScript, TypeScript, Chainlink, Ethereum, upgradable smart contracts, DAOs, the graph, moralis, aave, IPFS, and more. Follow along with the videos and you'll be a blockchain wizard in no time!

Please reference the repo for anything you need and feel free to leave issues and participate in the discussions.

⭐️ Course Contents ⭐
⌨️ (00:00:00) Lesson 0: Welcome To Blockchain
⌨️ (00:09:05) Lesson 1: Blockchain Basics
⌨️ (02:01:16) Lesson 2: Welcome to Remix! Simple Storage
⌨️ (03:05:34) Lesson 3: Remix Storage Factory
⌨️ (03:31:55) Lesson 4: Remix Fund Me
⌨️ (08:20:17) Lesson 6: Hardhat Simple Storage
⌨️ (10:00:48) Lesson 7: Hardhat Fund Me
⌨️ (12:32:57) Lesson 8: HTML / Javascript Fund Me (Full Stack / Front End)
⌨️ (13:41:02) Lesson 9: Hardhat Smart Contract Lottery
⌨️ (16:34:07) Lesson 10: NextJS Smart Contract Lottery (Full Stack / Front End)
⌨️ (18:51:36) Lesson 11: Hardhat Starter Kit
⌨️ (18:59:24) Lesson 12: Hardhat ERC20s
⌨️ (19:16:13) Lesson 13: Hardhat DeFi & Aave
⌨️ (20:28:51) Lesson 14: Hardhat NFTs
⌨️ (23:37:03) Lesson 15: NextJS NFT Marketplace (Full Stack / Front End)
⌨️ (28:53:11) Lesson 16: Hardhat Upgrades
⌨️ (29:45:24) Lesson 17: Hardhat DAOs
⌨️ (31:28:32) Lesson 18: Security & Auditing

Follow Patrick!

🎉 Thanks to our Champion and Sponsor supporters:
👾 Raymond Odero
👾 Agustín Kussrow
👾 aldo ferretti
👾 Otis Morgan
👾 DeezMaster

--

Рекомендации по теме
Комментарии
Автор

Good luck everyone!!!

I hope to see you all in the community!

PatrickAlphaC
Автор

I love how this video explores such interesting concepts but it's kinda crazy how nobody's talking about the book called Forbidden Crypto Hacks

lupelu
Автор

(00:00:00) Lesson 0: Welcome To Blockchain
(00:09:05) Lesson 1: Blockchain Basics
(00:18:26): The purpose of Smart Contracts
(00:39:17): Your First Transaction
(00:59:00): Gas I: Introduction to Gas
(01:05:32): How do Blockchains work?
(01:22:56): Signing Transactions
(01:30:23): Gas II: Block Rewards & EIP 1559
(01:39:33): High-Level Blockchain Fundamentals
(02:01:16) Lesson 2: Welcome to Remix! Simple Storage
(02:05:17): Setting Up Your first Contract
(02:12:29): Basic Solidity - Types
(02:18:42): Basic Solidity - Functions
(02:35:30): Basic Solidity - Arrays & Structs
(02:45:34): Basic Solidity - Errors & Warnings
(02:46:35): Basic Solidity - Memory, Storage & Calldata(Intro)
(02:50:17): Basic Solidity - Mappings
(02:53:38): Deploying your First Contract
(03:03:08): The EVM & A Recap of Lesson 2
(03:05:34) Lesson 3: Remix Storage Factory
(03:07:29): Importing Contracts into other Contracts
(03:16:37): Interacting with other contracts
(03:25:24): Inheritance & Overrides
(03:30:31): Lesson 3 Recap
(03:31:55) Lesson 4: Remix Fund Me
(03:34:12): Sending Eth Through A function & Reverts
(03:42:35): Chainlink & Oracles
(04:00:31): Review - Sending ETH And working with Chainlink
(04:01:54): Interfaces & Price Feeds
(04:09:10): Importing from GitHub & NPM
(04:11:09): Floating Point Math in Solidity
(04:21:59): Basic Solidity - Arrays & Structs II
(04:23:51): Review - Interfaces, GitHub Imports, & Math in Solidity
(04:25:03): Libraries
(04:29:54): SafeMath, Overflow Checking, and the "unchecked" keyword
(04:34:29): Basic Solidity - For Loop
(04:42:01): Basic Solidity - Resetting an Array
(04:42:36): Sending ETH from a Contract
(04:50:26): Basic Solidity Constructor
(04:53:20): Basic Solidity Modifiers
(04:56:34): Testnet Demo
(05:04:33): Advanced Solidity Concepts
(05:05:41): Advanced Solidity - Immutable & Constant
(05:12:57): Advanced Solidity - Custom Errors
(05:15:45): Advanced Solidity - Receive & Fallback
(05:27:59): Lesson 4 - Recap
(05:30:42) Lesson 5: Ethers.js Simple
(05:30:46): Effective Debugging Stratetgies & Getting Help
(05:41:53): How to Debug Anything
(05:53:47): Installation & Setup - Moving to local development
(06:02:39): Windows Install
(06:12:49): Working with Gitpod
(06:17:00): Local Development Introduction
(06:34:06): Tiny Javascript Refresher
(06:38:07): Asynchronous programming in Javascript
(06:46:16): Compiling our Solidity
(06:55:12): Ganache & Networks
(07:00:10): Introduction to Ethers.js
(07:08:39): A note on the await keyword
(07:10:24): Adding Transaction Overrides
(07:12:18): Transaction Receipts
(07:14:56): Sending a "raw transaction in ethersjs
(07:24:57): Interacting with Contracts in Ethersjs
(07:34:09): Environment Variables
(07:54:00): Optional Prettier Formatting
(07:57:52): Deploying to a Testnet or a Mainnet
(08:04:28): Verifying on Block Explorers (From the UI)
(08:14:19): Lesson 5 Recap
(08:17:08): Optional: Typescript
(08:20:17) Lesson 6: Hardhat Simple Storage
(08:29:42) Hardhat Setup Troubleshooting
(08:31:50) Hardhat Setup Continued
(08:33:10): Deploying SimpleStorage from Hardhat
(08:41:44): Networks in Hardhat
(08:51:15) Programmatic Verification
(09:06:36): Interacting with Contracts in Hardhat
(09:09:40) Artifacts Troubleshooting
(09:10:50) Custom Hardhat Tasks
(09:18:13) Hardhat Localhost Node
(09:23:10) The Hardhat Console
(09:26:13) Running Tests
(09:38:11) Hardhat Gas Reporter
(09:44:40) Solidity Coverage
(09:47:01) Hardhat Waffle
(09:47:37) Lesson 6 Recap
(09:52:20) Lesson 6 Typescript
(10:00:48) Lesson 7: Hardhat Fund Me
(10:03:41): Hardhat Setup
(10:06:21): Linting
(10:07:47): Hardhat Setup Continued
(10:09:38): Importing from NPM
(10:10:42): Hardhat Deploy
(10:21:06): Mocking & helper-hardhat-config
(10:52:51): Utils Folder
(10:55:44): Testnet Demo
(11:00:10): Solidity Style Guide
(11:08:37): Testing Fund Me
(11:30:40): Breakpoints & Debugging
(11:33:39): Gas III
(11:36:34): console.log & Debugging
(11:37:30): Testing Fund Me II
(11:44:34): Storage in Solidity
(11:52:38): Gas Optimizations using storage knowledge
(12:05:29): Solidity Chainlink Style Guide
(12:09:59): Storage Review
(12:11:43): Staging Tests
(12:17:57): Running Scripts on a Local Node
(12:22:00): Adding scripts to your package.json
(12:25:16): Pushing to Github

Continued in a separate comment ...

debangi.
Автор

Thank you so much for this. I'm not even two hours into the video and a big handful of points have become clear to me. This is really great stuff!

paul-olof
Автор

This is by far the most amazing and complete web3 course. Funny enough it is what actually powers the Tiditada Raffle Protocol. I was looking at the source code and comparing to the Raffle project in this course. So many similarities. Thank you so much Patrick for delivering value to the world and kudos to the learners like me.

silalabs
Автор

(12:32:57) Lesson 8: HTML / Javascript Fund Me (Full Stack / Front End)
(12:45:34): HTML Setup
(12:50:11): Connecting HTML to Metamask
(12:57:09): javascript in its own file
(12:59:13): ES6 (Front End JS) vs NodeJS
(13:07:58): Sending a Transaction from a Website
(13:19:01): Resetting an account in Metamask
(13:20:07): Listening for events and Completed Transactions
(13:30:42): Input Forms
(13:33:34): Reading from the Blockchain
(13:35:51): Withdraw Function
(13:38:53): Lesson 8 Recap
(13:41:02) Lesson 9: Hardhat Smart Contract Lottery
(13:43:45): Hardhat Setup
(13:46:57): Raffle.sol Setup
(13:54:03): Introduction to Events
(14:00:49): Events in Raffle.sol
(14:02:30): Introduction to Chainlink VRF (Randomness in Web3)
(14:09:53): Implementing Chainlink VRF (Introduction)
(14:14:31): Hardhat Shorthand
(14:15:31): Implementing Chainlink VRF - The Request
(14:22:57): Implementing Chainlink VRF - The Fulfill (Modulo)
(14:25:32): Implementing Chainlink VRF - The Fulfill (continued)
(14:28:27): Introduction to Chainlink Keepers
(14:34:46): Implementing Chainlink Keepers (checkUpKeep)
(14:38:52): Enums
(14:42:05): Implementing Chainlink Keepers (checkUpKeep- continued)
(14:47:15): Implementing Chainlink Keepers (performUpKeep)
(14:50:37): Code CleanUp
(14:56:00): Deploying Raffle.sol
(15:04:29): Deploying Raffle.sol (Mock Chainlink VRF Coordinator)
(15:10:47): Deploying Raffle.sol - continued
(15:20:08): Raffle.sol Unit Tests
(15:30:20): Testing Events & Chai Matchers
(15:31:30): Raffle.sol unit Tests Continued
(15:32:45): Hardhat Methods & "Time Travel"
(15:37:10): Raffle.sol unit Tests Continued II
(15:38:23): Callstatic
(15:39:59): Raffle.sol unit Tests Continued III
(15:52:11): Massive Promise Test
(16:02:32): Fixing spelling error and Run Tests
(16:07:25): Raffle.sol unit Tests Continued IV
(16:07:44): Raffle.sol Staging Tests
(16:18:19): Testing on a Testnet
(16:30:57): Smart Contract Lottery Conclusion
(16:32:40): Typescript
(16:34:07) Lesson 10: NextJS Smart Contract Lottery (Full Stack / Front End)
(16:40:37): NextJS setup
(16:48:44): Manual Header I
(16:58:44): React Hooks
(17:01:05): Manual Header II
(17:05:23): useEffect Hook
(17:10:29): Local Storage
(17:18:24): isWeb3Enable Loading
(17:19:26): web3uikit
(17:22:25): Introduction to Calling Functions in NextJS
(17:26:30): Automatic Constant Value UI Updater
(17:38:37): runContractFunction
(17:45:59): useState
(17:49:50): Calling Functions in NextJS
(17:52:58): useNotification
(17:58:05): Reading & Displaying Contract Data
(18:02:55): A note about onSuccess
(18:03:24): A Challenge to You
(18:04:13): Tailwind & Styling
(18:12:51): Introduction to Hosting your site
(18:15:15): IPFS
(18:18:52): Hosting on IPFS
(18:25:45): Hosting on IPFS & Filecoin using Fleek
(18:31:27): Filecoin Overview
(18:46:41): Lesson 10 Recap
(18:51:36) Lesson 11: Hardhat Starter Kit
(18:59:24) Lesson 12: Hardhat ERC20s
(18:59:28): What is an ERC? What is an EIP?
(19:01:41): What is am ERC20?
(19:03:04): Manually Creating an ERC20 Token
(19:09:24): Creating an ERC20 Token with Openzeppelin
(19:14:27): Lesson 12 Recap
(19:16:13) Lesson 13: Hardhat DeFi & Aave
(19:16:17): what is DeFi?
(19:19:58): What is Aave?
(19:25:48): Programatic Borrowing & Lending
(19:30:51): WETH Wrapped ETH
(19:38:12): Forking Mainnet
(19:45:21): Depositing into Aave
(19:57:42): Borrowing from Aave
(20:12:02): Repaying with Aave
(20:14:58): Visualizing the Transactions (And aTokens)
(20:17:05): Recap lesson 13
(20:28:51) Lesson 14: Hardhat NFTs
(23:37:03) Lesson 15: NextJS NFT Marketplace (Full Stack / Front End)
(28:53:11) Lesson 16: Hardhat Upgrades
(29:45:24) Lesson 17: Hardhat DAOs
(31:28:32) Lesson 18: Security & Auditing

debangi.
Автор

I'm 65 years old and this is the first time coding. Going through this is painful and hard. I find myself repeating each segment again and again determined to get this stuck in my old head and complete this gem of a course. Many thanks for putting this together.

vogel
Автор

Undoubtedly a great contribution to the community. This course is helping me getting started with blockchain technology and is allowing me to believe that I can also work in this space. Thank you so much for such a wonderful course 🤝🙏♥️

vedantpatil
Автор

What a tutorial that was! Lost for words and really grateful for your content Patrick! 🙏

ThatFirstRep
Автор

By far the most complete and comprehensive guide to learn web3 development ever made. Amazing contribution to the community, thank you so much Patrick for making this free and available for everyone.

gonzaotc
Автор

I have NEVER in my entire life been able to follow along and have things work the this. There were some minor differences but it was still easy to follow. I am now 10 hours into this video and really excited about all the things I have learned. I can't thank you enough for how professional and excellent this video has been. Web3 and Full Stack were what drew my attention in. I had some knowledge of bitcoin already so that was easy to follow along with. Being able to do all this from visual studio code is just awesome. I am most excited about Lesson 8 and onward though. I am on lesson 7 right now. My coworkers think I am insane for watching a 32 hour video lol.

scriptles
Автор

Guys let's appreciate this huge effort to make learning programming affordable to everyone.🥰🥰😍😍🤩🤩

bluesky-vctk
Автор

The level of detail makes this course super easy to follow. It answered a lot questions I had about the details regarding the toolings which are often skipped or skimped over from other sources I have been learning. More importantly, this course is up to date, so I don't find myself run into problems with solidity versions issues. Highly recommended! I have done 7 hours so far, will continue on daily basis until finish.

leizhang
Автор

I have been researcing blockchain development, so this was a super cool find. Excellent edition to my transformation tool kit. Can't believe the luck. Thanks

digitalian
Автор

I don't normally comment on YouTube videos, I'm way more comfortable "listening" to the conversation but I have to tell you and the entire freeCodeCamp crew that I truly appreciate all that you are doing. I have learned more from the courses that you giveaway than I have in "academies" that I paid $7500 to enroll in. Your teaching style is awesome and I am most impressed by the way you suggest that we try to troubleshoot on our own instead of just giving us all the answers. No one can learn if you hold their hand the entire journey so THANK YOU PATRICK! This is the best decision I've made all year.

sacredsoundsmeditation
Автор

Thank you, Patrick💜 The course is awesome! So far completed Lesson 1: Blockchain Basics and very much hyped to put acquired knowledge to practice🔥

lifetimeadventure
Автор

This is THE BEST web3 course ever! The way Patrick teaches is really intuitive and he is very easy to understand. Thanks for the course. Completed 19h of the course and hopefully will complete the rest soon.

shahjalalshohag
Автор

Thank You! Thanks for taking your time and energy to teach and produce such an awesome video. The information was clear and easy to follow. Bless!

PE
Автор

Thank you so much for creating this informative and engaging YouTube video course on blockchain! Your clear explanations and examples have been incredibly helpful in demystifying this complex technology. I'm grateful for the effort you've put into sharing your knowledge, and I'm looking forward to continuing my learning journey with your valuable content. Keep up the fantastic work

sainpankaj
Автор

This course is really, really good. Thank you for this. I'm about 5 hours in so far and can't believe how much I've learned.

aaxen