Skip to content

Latest commit

 

History

History
124 lines (85 loc) · 3.05 KB

README.md

File metadata and controls

124 lines (85 loc) · 3.05 KB

⚡ Hyperlane Starknet ⚡

A Starknet implementation of Hyperlane

https://hyperlane.xyz


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.

Project structure

Contracts

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.

Pre-requisites

  • Install Scarb (see here)
  • Install Starknet Foundry (see here)

Build

Once installed, you can compile the contracts by executing this command:

scarb build

Format

To format your code:

scarb fmt

Testing

Run the tests using snforge:

snforge test

Integration Tests

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

📖 License

This project is licensed under the MIT license. See LICENSE for more information.

Contributors ✨

Thanks goes to these wonderful people (emoji key):

This project follows the all-contributors specification. Contributions of any kind welcome!