Là một layer 2 network và smart contract trên network này được compile khác với các smart contract chạy trên Ethereum. Lý do là vì ZKsync sử dụng một tập các opcode khác với Ethereum và low-level output của Foundry sẽ không tương thích với máy ảo của ZKsync.

Để làm việc với ZKsync thông qua Foundry, ta cần cài đặt foundry-zksync.

Important

foundry-zksync chỉ có thể chạy ở trên Linux hoặc MacOS.

Lệnh build và cast tương tự với Vanilla Foundry: buildcast do foundry-zksync đã override các lệnh này. Để chuyển sang phiên bản Vanilla Foundry, ta dùng lệnh foundryup. Ngược lại, dùng lệnh foundryup-zksync.

Quá trình build với foundry-zksync sẽ tạo ra thư mục zkout thay vì out như Vanilla Foundry.

Để chạy Anvil cho ZKsync, ta dùng lệnh sau:

anvil-zksync

Resources