A Starknet implementation of Hyperlane
This repository is an implementation of the Hyperlane protocol for Starknet app-chains. You can learn more about Hyperlane here.
The implementation guidelines can be found here.
The contracts are located in the contracts/
directory. It's a scarb
project, so you can use the scarb
CLI to build it.
It uses Starknet Foundry
for tests.
See the contracts README for more information.
Once installed, you can compile the contracts by executing this command:
scarb build
To format your code:
scarb fmt
Run the tests using snforge:
snforge test
To run the integration tests:
Once installed, build the contracts:
cd contracts && scarb build && cd -
Open another terminal, start a new Katana instance:
katana -b 1000 &
Run evm -> strk messaging test on the first terminal:
cd rust && cargo test -- test_mailbox_evm_to_strk
Once the test passed, kill the katana instance:
pkill katana
Restart another instance for the second test (strk -> evm):
cd rust && cargo test -- test_mailbox_strk_to_evm
This project is licensed under the MIT license. See LICENSE for more information.
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!