- vừa được xem lúc

Lập trình Smart Contract Algorand sử dụng Algokit

0 0 8

Người đăng: Cường Phạm Vũ

Theo Viblo Asia

Lập trình Smart Contract trên Algorand sử dụng Algokit

Ơn trời Algokit đây rồi. Trước đây khi lập trình smart contract trên Algorand thì anh em sẽ mất 7 7 49 bước cho việc cài đặt môi trường cũng như các công cụ cần thiết. Nhưng nay chỉ cần cài Algokit thì có thể code smart contract trên Algorand luôn mà chỉ mất tầm 10 phút.

Algokit là một công cụ phát triển smart contract trên blockchain của Algorand. Nó là tổng hợp của web3 infrastructurem, tool chains cũng như có sẵn các project templates và dễ dàng tích hợp với Visual Studio Code.

Với Algokit, lập trình viên có thể nhanh tạo ra các dApp và tương tác với các dApp trên Algorand một cách dễ dàng và nhanh chóng.

Algokit cũng tích hợp luôn block explorer local, testnet, mainet,.. tích hợp quản lý ví (tạo ví, deposit ví), công cụ để deploy và tương tác với dApp. Algokit là công cụ mã nguồn mở (open source) và miễn phí cho mọi người sử dụng, hỗ trợ cả Window + MacOS

Cài đặt AlgoKit

To get started with AlgoKit on Mac OS, you will need to ensure that you have the following software packages properly configured: Để bắt đầu cài AlgoKit trên MacOS, bạn cần tải và cài đặt trước các phần mềm sau:

  • Docker desktop
  • Python and pipx
  • Visual Studio Code
  • Chrome browser

Mình sẽ sử dụng brew làm package manager. Để cài brew bạn chạy terminal và paste brew install script:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  • Bạn cài Visual Studio Code bằng câu lệnh brew install --cask visual-studio-code
  • Cài Docker Desktop bằng câu lệnh brew install --cask docker sau khi cài xong, bạn cần bật docker lên và giữ docker mở trong suốt quá trình develop dApp.
  • Cài chrome: brew install --cask google-chrome
  • Cài python and pipx brew install python3

Sau khi cài xong các phần mềm cần thiết, bạn cài Algokit bằng câu lệnh brew install algokit

Deploy Smart Contract đầu tiên của bạn với Algokit

Để khởi tạo mới một chương trình chúng ta dùng cú pháp algokit init

  • Bạn điền tên project
  • Chọn project template: ở đây mình chọn beaker
  • Bạn chọn các options mình mong muốn và algokit sẽ xử lý phần còn lại (great).

Kết quả sẽ tạo ra 1 project trông như thế này:

Mình sẽ deploy và chạy thử 1 project mẫu nhé - bạn vào smart_contracts > helloworld.py

  • Đây là một chương trình cơ bản, nó sẽ lấy input là 1 string và output ra là "hello, string đó"
  • Mình sẽ thử sửa lại 1 tí. Mình sẽ thay đổi tên smart contract thành algorandVN và out sẽ là "Xin chao, string"
  • Chọn icon run -> chọn build beaker application
  • Sau khi build xong thì chương trình sẽ tạo ra thư mục algorandVN ở smart_contracts > artifacts chứa 4 files
    • application.json
    • approval.teal
    • clear.teal
    • contract.json
  • Deploy smart contract bằng cách chọn icon build -> deploy beaker application
  • dApp được deploy thành công với app id 35 --> nhớ app id này nhé

Tương tác với Smart Contract

  • Khởi tạo môi trường local algorand với cú pháp: algokit localnet start
  • Mở docker
  • Bật explore với cú pháp algokit explore -> tự động mở ra dAppflow
  • Bonus: Các bạn có thể tìm hiểu thêm các cú pháp khác bằng cách gõ algokit -h
  • Các bạn chọn Dev Wallets để tạo/deposit thêm tiền vào ví - sau đó connect wallet
  • Bạn chọn ABI Studio chọn import ABI - sau đó chọn file contract.json trong thư mục smart_contracts > artifacts > algorandVN
  • chọn edit App ID -> điền 35
  • Để tương tác với smart contract bạn chọn Execute -> Điền input "henry" -> Execute -> output Xin chao, Henry (it's work yay)

Kết luận

Algokit là một tool rất hữu dụng cho các developer đang hoạt động Algorand. Tool này cung cấp cho developer các infrastructure, toolchain và project template cần thiết để developer có thể nhanh chóng khởi tạo và tương tác với dApp. Happy Coding.

Bình luận

Bài viết tương tự

- vừa được xem lúc

Code Smart Contract bằng Assembly ?

Introduction. Hồi còn học trong ghế nhà trường bộ môn lập trình tốn nhiều não nhất của mình là code assembly. Nôm na thì bất cứ ngôn ngữ bậc cao nào như C , Go, Java,... được sinh ra để người dễ hiểu và dễ code , tuy nhiên chúng đều sẽ được compiled down xuống assembly một ngôn ngữ bậc thấp để máy h

0 0 43

- vừa được xem lúc

Tích hợp Band Protocol để lấy dữ liệu off-chain cho smart contract

Khoan nói về Band Protocol là gì, mình sẽ đi thẳng vào công dụng của nó, có thể đây chính là mảnh ghép mà bạn vẫn luôn tìm kiếm cho Dapp của mình. Band protocol hỗ trợ các contract giao tiếp với dữ liệu từ thế giới bên ngoài như các dữ liệu về thời tiết, thể thao, giá trị cổ phiếu, tỉ giá các đồng n

0 0 52

- vừa được xem lúc

Xây dựng ứng dụng Dapps đầu tiên của bạn

Tutorial này sẽ giúp bạn xây dựng dapp đầu tiên của bạn – một hệ thống theo dõi chủ nuôi trong một tiệm thú cưng! Được dịch từ tutorial của Truffle. .

1 1 726

- vừa được xem lúc

Làm thế nào để một smart contract có thể nhận NFT (Non-Fungible Token)?

Mở đầu. Như chúng ta đã biết, trên các chain chạy evm ngày nay ngoài Native coin (ETH) và Fungible Token (ERC20) thì chúng còn cón Non-Fungible Token (ERC721 và ERC1155).

0 0 124

- vừa được xem lúc

Lập trình smart contract để tạo NFT kết hợp với Chainklink và IPFS

NFTs hay tên tiếng Anh là Non-Fungible Tokens có nghĩa là token duy nhất mà không bất kì token nào khác giống như nó. .

0 0 282

- vừa được xem lúc

Tản mạn về lỗ hổng trong smart contract của Fairmoon Token, các dấu hiệu bất thường và nguy cơ từ crypto

Hôm nay (19/05/2021) là một ngày đen tối đối với cộng đồng crypto khi:. .

0 0 58