Welcome to my Training Program repository for the Summer Training at Chandigarh University on June-July 2023. Throughout this training, I have learned various concepts and technologies related to blockchain and implemented a project that showcases my skills and knowledge.
This repository contains the code and resources for my training program, allowing you to explore the exciting world of blockchain technology and view the project I have developed. I have gained hands-on experience with Ethereum, Solidity, JavaScript, and other tools to develop a Social Network Application using Blockchain. Additionally, I have acquired NFTs that represent my achievements in this training program.
The Training consists of four Courses:
This module focuses on building a solid foundation in JavaScript. It covers the following topics:
-
Module 1.1: JavaScript Variables and Operators
- Foundational coding knowledge in JavaScript, including variables, data types, operators, and basic calculations.
-
Module 1.2: JavaScript Arrays and Objects
- Working with arrays and objects in JavaScript, understanding their properties and methods, and manipulating data using these data structures.
-
Module 1.3: JavaScript Loops and Functions
- Utilizing loops and functions to iterate over data and perform repetitive tasks in JavaScript.
π For more details, you can visit the JS PROOF: Beginner Course on MetaCrafters Academy.
This module introduces you to Ethereum and the fundamentals of blockchain technology. It consists of the following modules:
-
Module 2.1: Getting Started with Web3 and the Blockchain
- Defining Web3, the blockchain, cryptography, and Ethereum. Understanding the basics of interacting with the Ethereum network.
-
Module 2.2: Ethereum and the Ethereum Virtual Machine (EVM)
- Exploring key features of Ethereum, including the Ethereum Virtual Machine (EVM) and its functionalities.
-
Module 2.3: Getting Started with Solidity
- Reading and understanding smart contracts. Writing smart contracts using the Solidity programming language.
π For more details, you can visit the ETH PROOF: Beginner Course on MetaCrafters Academy.
This module builds upon the knowledge gained in the previous module and dives deeper into Ethereum smart contract development. It consists of the following modules:
-
Module 3.1: Functions and Errors
- Utilizing modifiers, events, and functions in smart contracts. Handling errors and exceptions effectively.
-
Module 3.2: Smart Contract Management
- Managing smart contract memory and extensions. Connecting the user interface (UI) to decentralized applications (DApps).
-
Module 3.3: Types of Functions
- Implementing complex functions to build Solidity contracts.
-
Module 3.4: Building on Avalanche - ETH AVAX
- Build Avalanche smart contracts on the C-Chain.
π For more details, you can visit the ETH AVAX PROOF: Intermediate EVM Course on MetaCrafters Academy.
This module covers advanced topics related to blockchain development, with a focus on the Polygon network. It consists of the following modules:
-
Module 4.1: Proof of Stake
- Programmatically bridging an NFT collection from Ethereum to Polygon.
-
Module 4.2: Polygon ID
- Implementing an end-to-end system for Polygon ID authentication.
-
Module 4.3: Polygon zkEVM
- Designing a zkSNARK circuit and deploying an on-chain verifier.
π For more details, you can visit the POLY PROOF: Advanced on MetaCrafters Academy.
To get started with the course materials and code examples, follow these steps:
-
Clone the repository:
git clone https://github.com/cu-sanjay/Metacrafters.git
-
Install the dependencies:
cd module_name npm install
-
Navigate to the relevant module's folder (e.g., js-proof, eth-proof, etc.).
-
Se up environment variables and update configuration files.
-
Compile the smart contracts:
npx hardhat compile
-
Deploy the smart contracts:
npx hardhat deploy
-
Start the development server:
npm start
-
Open your browser and visit http://localhost:3000 to view the application.
π Please follow the specific instructions provided in each module's README.md file to run the code and complete the assessments.
π Special thanks to Ming, Chris, Er. Raman Sir, and the Discord Community for their continuous support and guidance.
Contributions to this project are welcome! If you find any issues or have suggestions for improvements, please open an issue or submit a pull request.
This project is licensed under the MIT License.