Date : Wednesday, 4 September 2024
Purpose of this event :
- Introducing Cardano Developer Community such as Gimbalabs and Cardano Developer Community Indonesia
- Introducing Cardano Developer Learning platform such as PPBL (Plutus Project Based Learning) and MPBL (Mesh Project Based Learning)
- Introducing Web3 and Dapps
- Learn how to use Web3 SDK such as MeshJS to build Dapps from the front-end side
Host :
- @Valdryan_Ivandito (Speaker)
Total Participants : 8 Participants
Video Recording can be watched in Komunitas Cardano Indonesia YouTube Channel, here’s the link
Presentation material in PDF format as follows :
- [Cardano developer community]
- [Web generation]
- [Learn MeshJS Wallet Hooks]
Documentations :
Summary :
On the third day, we covered these topics during TFT Class :
- Topic-1 : Introduction to Cardano Developer Community and Cardano Developer Learning Platform PPBL and MPBL
- Topic-2 : Web Generation
- Topic-3 : Practical session on how to setup project boilerplate (NextJS include Typescript, Mesh and Tailwind)
- Topic-4 : Practical session on how to connect web application with cardano wallet
- Topic-5 : Practical session on how to get current wallet’s state and using connecting and disconnecting function
- Topic-6 : Practical session on how to return a list of wallets installed on user’s device
- Topic-7 : Practical session on how to return information such as wallet address, list of assets, balance, and network from connected wallet
On the third day of the TFT class, the topic discussed was the developer field. At the beginning, participants were introduced to various developer communities and entities that contribute to the development of Cardano, such as Gimbalabs, Mesh, and TxPipe. The goal of introducing these entities was so that participants could join their Discord channels to learn more and ask questions about tools in Cardano.
Participants were also introduced to learning platforms specifically for developers, such as PPBL (Plutus Project Based Learning) and MPBL (Mesh Project Based Learning). Given the limited time for learning and the basic level of the material presented in the TFT class, participants can continue their studies independently using the PPBL and MPBL modules.
Before the practical session, we had a brief discussion about web generation. We explored the evolution of the web, starting from Web 1.0, which was the first era of the web and had very limited user interaction, then progressing to Web 2.0, where users could fully interact, and now we are moving towards Web 3.0, commonly referred to as web3. Although there is some debate about the difference between web 3.0 and web3, fundamentally both refer to web applications integrated with blockchain, which involve elements of decentralization.
In Web 3.0, various applications integrated with blockchain, known as Dapps (Decentralized Applications), have emerged. However, after discussion, we agreed that Dapps are not entirely decentralized, as the front-end is still hosted on centralized VPS or servers, while the on-chain aspect is decentralized. Therefore, decentralization is a relative concept.
After participants became more familiar with the web3 domain and recognized Dapps, we began practicing how to build a web application that can interact with a Cardano wallet using the MeshJS web3 SDK. In the first practice, participants set up a workspace with NextJS and MeshJS installed, and we attempted to understand and implement the Cardano Wallet component.
In the next practice, we used various Wallet Hooks. Valdryan Ivandito, as the tutor, guided us through live coding on the implementation of all Wallet Hooks. The first Wallet Hook we implemented was the useWallet, which provides information about the current wallet’s condition. By adding conditional rendering, we were able to implement a feature that indicates when the wallet is connected, changing the text from “disconnect” to “connected.”
Next, to obtain the list of wallets installed in the browser, we used useWalletList and displayed the results in console.log(). We then tried other wallet hooks to retrieve information such as the wallet address, balance, asset list, and the network of the installed wallet. So far participants had learned and practiced the most basic aspects of MeshJS, specifically Wallet Hooks.
Regard,