<aside> 💡 This page is publicly viewable!

</aside>

<aside> ⚠️

The code in this integration is not audited or meant to be used in a production setting. It should be used at your own risk!

</aside>

Note that the code is not audited or production ready and should be used at your own risk.

Help

Local Devnet

git clone --branch integration --recursive <https://github.com/EspressoSystems/nitro-espresso-integration/>
cd nitro-espresso-integration/nitro-testnode
docker compose pull --ignore-pull-failures
./test-node.bash --init --validate --espresso --blockscout --latest-espresso-image

Note: since nitro-testnode is submodule of nitro one needs to run git submodule update in the nitro checkout when switching branches or pulling changes in the nitro checkout.

Docker images

Contract deployment

Note: The upstream RollupCreator contracts do not deploy a version of the contracts that is compatible with the Espresso integration. Either our RollupCreator (see below) should be used or the contract in our fork of nitro-contracts needs to be deployed.

Contract deployment using deploy binary

For integration with the Espresso Sequencer we had to modify the OneStepProverHostIO contract. The OSP contract now needs to read from the HotShot Light Client contract. The deploy binary in our nitro fork has been updated to reflect this. The HotShot Light Client contract address needs to be passed via a new argument to the binary. The light client contract is deployed to sepolia here

  -hotshot string
    	the address of hotshot contract in L1