The collections of smart contracts that power the Ronin Bridge.
- Install packages
$ forge install- Build contracts
$ forge build- Run test
$ forge test$ forge script <path/to/file.s.sol> -f --private-key <your_private_key>This repo contains source code of contracts that will be either deployed on the mainchains, or on Ronin chain.
- On mainchains:
- Governance contract:
MainchainGovernanceAdmin - Bridge contract:
MainchainGatewayV3
- Governance contract:
- On Ronin chain:
- Governance contract:
RoninGovernanceAdmin - Bridge operation:
RoninGatewayV3
- Governance contract:
Except for the governance contracts and vault forwarder contracts, all other contracts are deployed following the proxy pattern for upgradeability. The TransparentUpgradeableProxyV2, an extended version of OpenZeppelin's, is used for deploying the proxies.
To comply with the governance process, in which requires all modifications to a contract must be approved by a set of governors, the admin role of all proxies must be granted for the governance contract address.
See docs/README.md for the documentation of the contracts.
See docs/HACK.md for the structure of the repo.
For the whitepaper, please refer to Ronin Whitepaper.