This codebase contains a minimal extension to the Diamonds standard, to allow for Diamond upgrades to be rolled-backed. The repository was genarated from this template.
- Clone this repo
- Install dependencies
$ yarn && forge update
- To compile contracts, run:
$ npx hardhat compile
$ npx hardhat run scripts/deploy.js
- To test, run:
$ forge test
Note
: A lot of improvements are still needed so contributions are welcome!!
Bonus: The DiamondLoupefacet uses an updated LibDiamond which utilises solidity custom errors to make debugging easier especially when upgrading diamonds. Take it for a spin!!
Need some more clarity? message me on twitter, Or join the EIP-2535 Diamonds Discord server