🖥️Integration Guide

Nexus Network has built an easy-to-integrate solution for the rollups. The Nexus contracts have already been deployed on Goerli. This document serves as an integration manual for rollup partners to test out the product by deploying a separate bridge contract. The goal of this exercise is to test the system end-to-end on Goerli, and over time deploy it on a public testnet.

Here are the steps to integrate with Nexus Network on the Goerli Test Network -

  1. The rollup selects the preferred implementation for the distribution of staking rewards Code - https://github.com/Nexus-2023/Nexus-Contracts/tree/main/contracts/nexus_bridge

  2. Once the implementation is selected, the rollup has two deployment options to import the nexus-package:

    1. Deploy Nexus as a library: This can be done by deploying the nexus-package separately and storing the library address in the bridge contract

      Example code with polygon zkEVM: https://github.com/Nexus-2023/zkevm-contracts/blob/polygon/Tangible/contracts/PolygonZkEVMBridge.sol

    2. Integrate with bridge: This can be done by inheriting the nexus-package.

      Example code: https://github.com/Nexus-2023/Nexus-Contracts/blob/main/contracts/demo_contracts/BridgeContractDAO.sol

Optimism Bridge:

  1. Share a public address with the Nexus team to get whitelisted. This address will act as the rollup admin address to trigger future parameter changes. The address can be a multi-sig, a contract address, etc

  2. Once the address is whitelisted, perform a contact call to the Nexus Network contracts highlighting -

    1. Rollup bridge contract address (This is the address to the newly deployed bridge after integrating the nexus-package)

    2. Staking limit for the rollup (percentage of ETH to be staked from the rollup bridge)

    3. ClusterID - Select the cluster of node operators to stake with (Over time this will become more customizable to allow the rollup to select multiple clusters and allocate a percentage of their assets to each cluster)

      1. For devnet choose 1

  3. After finishing the whitelisting, validators will automatically get created by the Nexus off-chain bots

  4. You can perform the following checks on the system -

    1. Fund the rollup bridge address - This should result in the creation of new validators. Validator activation takes a few hours

    2. Remove ETH from the bridge address - This should result in unstaking of ETH from the validators (note - unstaking on Goerli takes 2-3 days)

    3. Change staking ratio on the bridge - This should trigger staking/unstaking of ETH based on whether the ratio is increased/decreased. New validators are created if enough ETH is available or unstaked if enough ETH is not available to fulfill the ETH withdrawals

Nexus Contracts (Goerli)


Nexus Contract Proxy

Nexus Contract Implementation

Validator Execution Reward Contract

Node Operator Contract Proxy

Node Operator Contract Implementation

Last updated