It’s finally here. The ultimate course on full-stack Web3, Solidity, and blockchain development has now been released on freeCodeCamp. You can now learn Solidity and become a blockchain engineer.
This 30+ hour tutorial spanning 18 different lessons takes aspiring Web3 developers from zero to one hundred. Regardless of your experience level, following along with this course and diving deep into the material will help you to become a professional-level Web3 software engineer.
You can view the entire video here, and access the GitHub repo and community here.
Why You Should Take This Solidity and Web3 Course
Smart contracts, blockchains, and oracles are groundbreaking technologies with the potential to reshape the role of trust in society through built-in transparency, verifiability, and decentralization. However, to truly build out a decentralized future and fulfill the vision of a blockchain-powered world, we need more smart contract developers building powerful applications that are easy to navigate and seamless to use. This end-to-end course gives you the tools to help pioneer this paradigm shift and become a titan in the Web3 development space.
The immediate benefits of taking this course are self-evident. Solidity developers are some of the most sought-after engineers in the world. The average remote salary for a Solidity developer is around $145,000 per year, with highs of up to $400,000 per year. While full-stack developers average around $101,000 per year. This course teaches you both. Whether you’re looking to kickstart your software engineering career or build the next multi-billion dollar protocol, this course is the perfect way to get started.
What Sets This Course Apart?
While there is a wide range of Web3 development resources and courses out there, Patrick Collins has already created the number-one-most-watched smart contract course in the world—with over 2.4M views to date in less than one year. The course is still out for free, and you can view it here. If you’re focused on Python, this is the course for you.
If you don’t yet know which coding language you prefer, don’t worry. Both courses will give you the tools you need to become an expert-level software engineer. There have already been countless users who have taken the Python course and gone from having zero coding knowledge to becoming professional software engineers. The same will be true for this course.
The Lesson Plan
The video is broken down into 18 different lessons that teach aspiring Web3 developers everything they need to know to get started as successful software engineers.
The video works with the most widely adopted technologies and tools, including Aave, Alchemy, Chainlink, Coinmarketcap, Ethers, Etherscan, Filecoin, Fleek.hq, Ganache, The Graph, Hardhat, IPFS, Metamask, Moralis, NextJS, NFT.storage, OpenSea, OpenZeppelin, Pinata, ReactJS, Remix, Solidity, Trail of Bits, Web3UIKit, and more.
Lesson Zero: The Edge of the Rabbit Hole
The course starts out teaching you how to be most effective in taking the course in order to maximize the value you get out of it.
Lesson One: Blockchain Basics
Dive into the core concepts and philosophies of blockchain technology and get answers to questions such as: How does a blockchain work? What is the purpose of blockchains? Why is it all so important?
This lesson gives a synopsis of the history of blockchain and covers how networks like Bitcoin, Ethereum, and Chainlink have the ability to restructure any contract-based industry. Additionally, you’ll learn how to make your first transaction on the blockchain. As stated before, this is a hands-on course.
Lesson Two: Welcome to Remix! Simple Storage
In this lesson, learn how to build and deploy your first smart contract using Remix, one of the best development environments for novice blockchain engineers. You’ll also learn the fundamentals of Solidity, the main programming language used in smart contracts, including types, functions, arrays, structs, mappings, and more.
Lesson Three: Remix Storage Factory
A lesson that continues on Solidity basics and expands into more advanced topics like factory patterns, inheritance, importing, and interactions with other contracts.
Lesson Four: Remix Fund Me
In this lesson, you’ll start working with the basics of the Chainlink oracle network and begin learning how to send ETH programmatically, as well as explore interfaces, libraries, gas efficiencies, and more.
In practice, you’ll learn all these things by building a sample contract that can be used to fund public goods, run a decentralized Kickstarter, and more!
Lesson Five: Ethers.js Simple Storage
Additionally, you’ll learn how to send a transaction in its rawest form through an introduction to Alchemy.
Lesson Six: Hardhat Simple Storage
In line with the transition to a more professional setup, this lesson begins working with Hardhat—the most popular smart contract development framework, used by protocols all over the world to secure billions of dollars in value.
You’ll also learn how to set up tests in a professional environment and hook into extensions that make development easier, such as auto-verification on Etherscan.
Lesson Seven: Hardhat Fund Me
In this lesson, we level up our FundMe contract with more advanced tooling like mocking and gas optimizations, and learn more about storage and low-level bytecode in Solidity.
This lesson introduces Web3 frontends and website-building. You’ll learn how websites interact with wallets and smart contracts to understand the fundamentals of a full-stack Web3 application.
Lesson Nine: Hardhat Smart Contract Lottery
This massive project will give you your first taste of a “complete” project. You’ll build a cryptographically fair lottery/raffle—something that can’t exist outside the blockchain world. To do this, you’ll learn how to use Chainlink VRF and Chainlink Automation to combine verifiable randomness with decentralized automation.
Lesson Ten: NextJS Smart Contract Lottery
Next, you’ll take the code from lesson nine and build a website out of it. You’ll work with ReactJS and NextJS. React is the most popular frontend framework on the planet by far, and this lesson teaches you the advanced ways in which billion-dollar protocols build their websites. You’ll also be using IPFS and Fleek to host this website in a decentralized way.
Lesson Eleven: Hardhat Starter Kit
This lesson gives a breakdown of the Chainlink Hardhat-starter-kit template repo, which teaches you how to easily start a project yourself.
Lesson Twelve: Hardhat ERC20s
Learn how to build, create, and deploy our own ERC-20 token.
Lesson Thirteen: Hardhat DeFi and Aave
We learn how to interact and work with one of the most powerful and popular DeFi protocols on the planet—the Aave lending protocol. You’ll take your first step into becoming a DeFi quant by programmatically interacting and working with DeFi protocols.
Lesson Fourteen: Hardhat NFTs
This lesson teaches you all the tips and tricks behind popular NFT projects like Bored Ape Yacht Club and Cryptopunks, as well as how you can make these digital masterpieces yourself. This involves diving deep into a lot of low-level function calls that are happening under the hood of everyday transactions.
Lesson Fifteen: NextJS NFT Marketplace
If you finish this lesson, take a picture because this will be one of the most impressive projects that you’ll ever make! You’ll build an NFT marketplace from end to end, starting with the underlying smart contracts and finishing with a frontend website. To accomplish this, you’ll learn how to work with technologies like Moralis, The Graph, TailwindCSS, and many more popular technologies.
Lesson Sixteen: Hardhat Upgrades
Learn one of the most powerful concepts in blockchain engineering—proxies! You’ll also get the inside track on more low-level coding tricks such as delegatecall and how proxy storage works.
Lesson Seventeen: Hardhat DAOs
Learn how to build a decentralized governance vehicle to enable votes on proposals for a group of users who hold an ERC20 token.
Lesson Eighteen: Security and Auditing
This lesson gives you a comprehensive playbook to help you get from idea to reality. Get time-tested security recommendations for every step of the full-stack journey.
Then, you’ll receive even more resources to get to the next stage of Web3 development!
If you’ve been considering diving into the technical side of the smart contract and blockchain space, then this is 100% where you want to start. This curated, step-by-step tutorial was built with the benefit of years of experience in every aspect of decentralized applications. It provides you with everything you need to be successful in this space—all wrapped up in one video.
So what are you waiting for? Make the commitment to finish. It’s a marathon, not a sprint. Just 25 minutes a day will help you become a top-performing software engineer in the blockchain space.
See the repository and course contents here.