diff --git a/docs/dapp/opl/README.mdx b/docs/dapp/opl/README.mdx index 3329dc90e6..cbdbc5cd9c 100644 --- a/docs/dapp/opl/README.mdx +++ b/docs/dapp/opl/README.mdx @@ -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`
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`
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 @@ -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 diff --git a/docs/dapp/opl/hyperlane/README.md b/docs/dapp/opl/hyperlane/README.md new file mode 100644 index 0000000000..8f4e1e9b73 --- /dev/null +++ b/docs/dapp/opl/hyperlane/README.md @@ -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) diff --git a/sidebarDapp.ts b/sidebarDapp.ts index 8404dce4a9..5c2d4fe271 100644 --- a/sidebarDapp.ts +++ b/sidebarDapp.ts @@ -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: [ + ], + }, ], }, {