Welcome to BlockchainSummerCourse, your ultimate destination for learning EVM chain smart contract development through interactive challenges. This platform is designed to provide practical experience and a deep understanding of EVM chain development concepts. This repository is based on a fork of SpeedrunEthereum, enhanced with additional challenges and features.
An educational platform aimed at helping developers quickly and effectively learn EVM chain smart contract development. We offer a series of challenges that range from beginner to advanced levels, covering essential topics such as:
- βοΈ Writing basic and advanced smart contracts
- π Deploying and interacting with smart contracts
- ποΈ Building decentralized applications (dApps)
- πΈ Understanding DeFi concepts
- πΌοΈ Creating and managing NFTs
- π Ensuring smart contract security
- π οΈ Implementing Account Abstraction (AA)
- π Using oracles for external data integration
- βοΈ Gas optimization techniques
- π Building scalable and efficient smart contracts
To start your journey with BlockchainSummerCourse, follow these steps:
-
Clone the Repository:
git clone https://github.com/KnowledgeEngineeringDepartment-DACLab/BlockchainSummerCourse.git cd blockchainsummercourse -
Switch to Challenges Branch:
// Show list of all challenges git branch -r
// Choose the challenges you want git checkout {challenge-name}
BlockchainSummerCourse is structured into a series of challenges that progressively increase in difficulty. Hereβs an overview of the available challenges:
git checkout challenge-1-token- Basic ERC-20 Token: Create a basic ERC-20 token with standard functionalities such as transfer, approve, and transferFrom.
- Advanced ERC-20 Token: Create an ERC-20 token that includes minting, burning, and a capped supply.
- Secure and Managed ERC-20 Token: Create an ERC-20 token that includes pausing, timelock, and vesting features to manage and secure token transfers.
- Governance and Snapshot ERC-20 Token: Create a governance token that includes snapshot functionality for recording balances at specific points in time, allowing for effective governance through voting.
git checkout challenge-2-nft- Basic ERC-721 NFT: Create a basic ERC-721 NFT with standard functionalities such as minting and transferring NFTs.
- Advanced ERC-721 NFT: Create an ERC-721 NFT that includes minting, burning, and metadata functionalities.
- Secure and Managed ERC-721 NFT: Create an ERC-721 NFT that includes pausing, whitelisting, and royalties features to manage and secure NFT transfers.
BlockchainSummerCourse is licensed under the MIT License. See the LICENSE file for more details.
Happy Learning! π
The BlockchainSummerCourse Team
