Triển khai hợp đồng thông minh sử dụng Foundry
Giới thiệu
Foundry là một bộ khung phát triển hợp đồng thông minh, viết bằng ngôn ngữ Rust, cho phép các nhà phát triển quản lý và lập hợp đồng, chạy thử nghiệm, triển khai hợp đồng và tương tác với mạng từ dòng lệnh thông qua các tập lệnh solidity.
Foundry bao gồm bốn công cụ CLI chính, cho phép phát triển hợp đồng thông minh một cách nhanh chóng và theo mô-đun, cụ thể là:
- Forge: Bạn có thể triển khai, thử nghiệm và lập hợp đồng thông minh bằng Forge.
- Cast: Cast giúp việc tương tác với các hợp đồng thông minh EVM trở nên đơn giản. Trong đó bao gồm các hoạt động lấy dữ liệu chuỗi, gửi giao dịch và những hoạt động khác.
- Anvil: Bạn có cần khởi động một nút cục bộ không? Anvil là một môi trường nút cục bộ do Foundry cung cấp.
- Chisel: REPL solidity nhanh chóng, hữu dụng và chi tiết.
Trong hướng dẫn này, bạn sẽ:
- Tạo một dự án foundry đơn giản.
- Lập và thử nghiệm một hợp đồng thông minh mẫu bằng Foundry.
- Triển khai các hợp đồng thông minh bằng Foundry vào mạng Kairos của Kaia.
- Khám phá việc phân nhánh mạng chính thức bằng cast và anvil.
Điều kiện tiên quyết
Để làm theo hướng dẫn này, bạn cần đáp ứng các điều kiện tiên quyết sau:
- Code editor: a source-code editor such VS Code.
- MetaMask: used to deploy the contracts, sign transactions and interact with the contracts.
- Điểm cuối RPC: bạn có thể nhận từ một trong những Nhà cung cấp điểm cuối được hỗ trợ.
- KAIA thử nghiệm từ Vòi: nạp tiền vào tài khoản với một lượng KAIA vừa đủ.
- Cài đặt Rust và Foundry.
Thiết lập môi trường phát triển
Để kiểm tra xem việc cài đặt foundry có thành công không, hãy chạy lệnh dưới đây:
forge -V
Kết quả đầu ra
Sau khi cài đặt foundry thành công, bạn sẽ có quyền truy cập vào các công cụ CLI (forge, cast, anvil, chisel) có sẵn trong foundry. Hãy cùng lập dự án foundry bằng các bước sau:
Bước 1: Để bắt đầu một dự án mới, hãy chạy lệnh sau:
forge init foundry_example
Bước 2: Điều hướng đến thư mục dự án của bạn.
cd foundry_example
Sau khi khởi tạo một dự án foundry, thư mục hiện tại của bạn sẽ bao gồm:
- src: thư mục mặc định cho các hợp đồng thông minh của bạn.
- tests: thư mục mặc định cho các thử nghiệm.
- foundry.toml: tập tin cấu hình dự án mặc đ ịnh.
- lib: thư mục mặc định cho các phần phụ thuộc của dự án.
- script: thư mục mặc định cho các tập tin tập lệnh solidity.
Cấu hình foundry.toml
Bây giờ chúng ta đã thiết lập xong dự án, chúng ta phải tạo tệp .env
và thêm các biến. Foundry sẽ tự động tải tệp .env có trong thư mục dự án của bạn.
Tệp .env phải tuân theo định dạng sau:
KAIROS_RPC_URL=DÁN_URL_RPC
Tiếp theo là chỉnh sửa tệp foundry.toml
. Bạn phải có một cái ở gốc của dự án sau khi tạo giàn giáo.
Thêm các dòng sau vào cuối tệp:
[rpc_endpoints]kairos = "${KAIROS_RPC_URL}"
Điều này tạo ra RPC alias cho Kaia Kairos Testnet.