many-things / cw-hyperlane

52 stars 26 forks source link

CW Hyperlane

codecov crates.io

Table of Contents

Architecture

Architecture

Prerequisites

How to build

make install-dev

make build

How to test

cargo test --workspace --exclude hpl-tests

cargo llvm-cov --workspace --exclude hpl-tests

How to deploy

Project Structure

├── contracts
│   │
│   ├── core
│   │   ├── mailbox
│   │   └── va
│   │
│   ├── hooks
│   │   ├── aggregate
│   │   ├── fee # protocol fee
│   │   ├── merkle
│   │   ├── pausable
│   │   ├── routing
│   │   ├── routing-custom
│   │   └── routing-fallback
│   │
│   ├── igps # also this is a part of `hook`
│   │   ├── core
│   │   └── oracle
│   │
│   ├── isms
│   │   ├── aggregate
│   │   ├── multisig
│   │   ├── pausable
│   │   └── routing
│   │
│   ├── mocks # for testing
│   │   ├── mock-hook
│   │   ├── mock-ism
│   │   └── mock-msg-receiver
│   │
│   └── warp
│       ├── cw20
│       └── native
│
├── integration-test
│
├── packages
│   │
│   ├── connection # same as `MailboxClient` of evm implementation
│   ├── interface # package for contract interfaces (external)
│   ├── ownable
│   ├── pausable
│   └── router
│
├── scripts # useful scripts for development (e.g. code uploading. contract deployment)
│
└── ts
    └── sdk # typescript sdk for contract integration. (auto generated via ts-codegen)