Welcome to the Sui Chain Game Development & Deployment Workshop at IIT Bombay! This workshop is meticulously designed to provide an interactive, engaging, and productive learning experience centered around Web3, Blockchain fundamentals, the Sui blockchain, and the Move programming language. Through project-based learning, participants will develop a simple game integrated with smart contracts on the Sui blockchain.
- Workshop Overview
- Objectives
- Agenda
- Detailed Modules
- 1. Introduction to Web3
- 2. Blockchain Basics
- 3. Layers of Blockchain
- 4. Introduction to Sui
- 5. Introduction to Move Language
- 6. Smart Contract Development on Sui
- 7. Building a Simple Game in TypeScript
- 8. Integrating Smart Contracts with the Game
- 9. Deployment on Sui Chain
- 10. Interactive Session: Rock and Roll Finale
- Resources
- Code Snippets & Tutorials
- Conclusion
- Presentation Outline
- Implementation Outline
This workshop aims to introduce IIT Bombay students to the fundamentals of Web3 and Blockchain technologies, with a focus on the Sui blockchain and its Move programming language. Participants will engage in hands-on project-based learning to develop and deploy a simple game that interacts with smart contracts on the Sui blockchain.
- Understand the basics of Web3 and Blockchain technologies.
- Learn about the Sui blockchain and its architecture.
- Master the Move programming language for smart contract development.
- Develop a simple game using TypeScript integrated with Sui smart contracts.
- Deploy the developed game and smart contracts on the Sui blockchain.
- Foster an interactive and collaborative learning environment.
- Overview: Understanding the evolution from Web2 to Web3.
- Key Concepts:
- Decentralization: Transition from centralized servers to distributed networks.
- Trustless Systems: Eliminating the need for intermediaries.
- Tokenization: Digital representation of assets.
- Interactive Activity: Quick poll on participants' familiarity with Web3 concepts.
- Overview: Fundamentals of blockchain technology.
- Key Concepts:
- Distributed Ledger: Maintaining a shared and synchronized record.
- Consensus Mechanisms: Methods like Proof of Work (PoW) and Proof of Stake (PoS).
- Cryptography in Blockchain: Ensuring security and integrity.
- Interactive Activity: Simple blockchain simulation exercise.
- Overview: Exploring the different layers in blockchain architecture.
- Key Concepts:
- Data Layer: Storage and structure of data.
- Networking Layer: Communication protocols.
- Consensus Layer: Mechanisms to achieve agreement.
- Application Layer: Smart contracts and decentralized applications (dApps).
- Interactive Activity: Layer identification and discussion.
- Overview: Introduction to the Sui blockchain.
- Key Features:
- High Throughput and Scalability: Efficient transaction processing.
- Move Programming Language: Safe and flexible smart contracts.
- Security and Reliability: Robust network architecture.
- Interactive Activity: Explore Sui ecosystem tools briefly.
- Overview: Understanding the Move programming language.
- Key Concepts:
- Move’s Design Philosophy: Safety and resource management.
- Modules and Resources: Building blocks of Move programs.
- Type System: Ensuring type safety.
- Interactive Activity: Write a simple Move script.
- Overview: Building smart contracts using Move on the Sui blockchain.
- Key Concepts:
- Move Syntax and Data Types: Structs, functions, and types.
- Writing, Testing, and Deploying Smart Contracts: Development lifecycle.
- Best Practices: Security and optimization tips.
- Interactive Activity: Develop a basic smart contract.
- Overview: Creating a frontend game using TypeScript.
- Key Concepts:
- TypeScript Fundamentals: Types, interfaces, and modules.
- Game Design Principles: Basic game mechanics.
- Integrating with Blockchain: Connecting frontend with smart contracts.
- Interactive Activity: Start building the game frontend.
- Overview: Connecting the TypeScript game with Sui smart contracts.
- Key Concepts:
- Sui SDK Integration: Using Sui's TypeScript SDK.
- Handling Blockchain Transactions: Sending and receiving data.
- Ensuring Security and Efficiency: Best practices for integration.
- Interactive Activity: Link frontend actions with smart contract functions.
- Overview: Deploying the game and smart contracts on the Sui blockchain.
- Key Concepts:
- Deployment Tools and Processes: Using Sui CLI and other tools.
- Managing Deployments: Version control and updates.
- Post-Deployment Testing: Ensuring functionality and performance.
- Interactive Activity: Deploy the developed project live.
- Overview: Interactive Q&A and demonstration.
- Activities:
- Live Demonstration: Showcasing the deployed game.
- Open Floor for Questions: Addressing participant queries.
- Networking and Feedback Collection: Gathering insights and suggestions.
- Documentation:
- Tools:
- Libraries:
- Sui SDK for JavaScript
- React (optional for frontend enhancements)
- Hosting Platforms:
- Version Control:
-
Compile the Move Contract:
sui move build
-
Publish the Contract:
sui move publish
-
Deploy the Frontend:
- Host the TypeScript game using platforms like Vercel or Netlify.
- Ensure the frontend interacts correctly with the deployed smart contracts.