Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add hyperlane to docs #1090

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions docs/dapp/opl/README.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ enables seamless state transitions across multiple chains.
| **[OPL SDK]** | SGN (Celer) | Executor (self-hosted or hosted service by Celer) | SGN Fee: Paid via `msg.value` <br/> Executor Fee: Charged externally (Free on testnet) |
| **[Celer IM][celer]** | SGN (Celer) | Executor (self-hosted or hosted service by Celer) | SGN Fee: Paid via `msg.value` <br/> Executor Fee: Charged externally (Free on testnet) |
| **[Router Protocol][router]** | Orchestrators (Router Chain) | Relayer (run by 3rd party) | Paid by the approved feepayer on the Routerchain |
| **[Hyperlane][hyperlane]** | Self-hosted (permissionless) | Self-hosted | Interchain Gas Payments on origin chain |

## Examples

Expand All @@ -73,3 +74,4 @@ enables seamless state transitions across multiple chains.
[OPL SDK]: ./opl-sdk/README.md
[celer]: ./celer/README.md
[router]: ./router-protocol/README.md
[hyperlane]: ./hyperlane/README.md
63 changes: 63 additions & 0 deletions docs/dapp/opl/hyperlane/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
---
description: Hyperlane Bridge
---

# Hyperlane

[Hyperlane] is a permissionless interoperability protocol that enables seamless
cross-chain communication for developers. Its unique design allows deployment
across various blockchain environments, including layer 1 chains, rollups, and
app-chains, without the need for approvals or intermediaries. This empowers
developers to build cross-chain applications with full control over their
operations in a multi-chain ecosystem.

Features of Hyperlane:

- Modular Interchain Security Modules (ISMs)
- Warp Routes for token transfers
- Interchain Accounts (ICA) for cross-chain smart contract interactions
- Interchain Queries (IQS) for remote data access

[Hyperlane]: https://hyperlane.xyz/

## Hyperlane CLI on Sapphire

The standard Hyperlane CLI relies on the `eth_getStorageAt` method, which is
incompatible with Sapphire by default. To address this, a custom branch of the
Hyperlane CLI has been created. You can find it here:
[https://github.com/hyperlane-xyz/hyperlane-monorepo/tree/pb/storage-workaround](https://github.com/hyperlane-xyz/hyperlane-monorepo/tree/pb/storage-workaround)

To use this modified CLI:
1. Clone the branch to your local machine:

```
git clone https://github.com/hyperlane-xyz/hyperlane-monorepo.git --branch pb/storage-workaround
cd hyperlane-monorepo
```

2. Install dependencies and build the project:

```
yarn install && yarn build
```

3. Run the modified CLI using the following command:

```
yarn workspace @hyperlane-xyz/cli hyperlane
```

For more details about `eth_getStorageAt`, refer to the [Sapphire documentation].


[Sapphire documentation]: https://github.com/oasisprotocol/sapphire-paratime/blob/main/docs/deployment.md#caution-against-using-eth_getstorageat

### Hyperlane Deployment

For guidance on deploying a new chain using the Hyperlane CLI, refer to the
official documentation [here].

When deploying Hyperlane on Sapphire, use the modified CLI version described
earlier to ensure compatibility with Sapphire’s environment.

[here](https://docs.hyperlane.xyz/docs/deploy-hyperlane)
10 changes: 10 additions & 0 deletions sidebarDapp.ts
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,16 @@ export const sidebarDapp: SidebarsConfig = {
'dapp/opl/router-protocol/approve',
],
},
{
type: 'category',
label: 'Hyperlane',
link: {
type: 'doc',
id: 'dapp/opl/hyperlane/README',
},
items: [
],
},
],
},
{
Expand Down
Loading