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.