The best way to make the modules stick is to build something. These four projects take you from a blockchain written in JavaScript to an ERC-20 token, an NFT collection, and finally a full-stack dApp with React, ethers.js and Hardhat.
Each one is a code-along video, so you can pause, type it out yourself and adapt it to your own ideas. Use test networks and test ether while you practice, and never put real funds or a real private key into tutorial code. Pick the project that matches the module you've just finished and come back for the rest.
Write a small blockchain from scratch in JavaScript, with blocks, hashing, chaining and proof of work, to see how the ideas from the first modules fit together.
Write your own ERC-20 token contract in Solidity and test it with Hardhat.
Write an ERC-721 contract with OpenZeppelin, deploy it to a testnet, and host the NFT art and metadata.
Build a complete dApp: write and deploy Solidity contracts with Hardhat, then connect a React front end to them using ethers.js and MetaMask.