First Steps with Foundry-ZKsync
This section introduces the forge
command-line tool. We will walk through creating a new project, compiling it, and running tests.
To start a new project with Foundry-ZKsync, use the forge init
command:
$ forge init hello_foundry
Now, letβs explore the structure that forge
has generated for us:
$ cd hello_foundry
$ tree . -d -L 1
.
βββ lib
βββ script
βββ src
βββ test
4 directories
You can compile the project using forge build --zksync
:
$ forge build --zksync
Compiling 27 files with zksolc and solc 0.8.26
zksolc and solc 0.8.26 finished in 2.85s
Compiler run successful!
To run the tests, use the forge test --zksync
command:
$ forge test --zksync
Compiling 25 files with Solc 0.8.27
Solc 0.8.27 finished in 676.84ms
Compiler run successful!
No files changed, compilation skipped
Ran 2 tests for test/Counter.t.sol:CounterTest
[PASS] testFuzz_SetNumber(uint256) (runs: 256, ΞΌ: 683547, ~: 577696)
[PASS] test_Increment() (gas: 526627)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 3.20s (3.20s CPU time)
Ran 1 test suite in 3.20s (3.20s CPU time): 2 tests passed, 0 failed, 0 skipped (2 total tests)
π‘ Tip
You can always view detailed help for any command or subcommand by appending
--help
to it.
For visual learners, be sure to check out these beginner tutorials.