Skip to content

An ERC2535 Diamond Implementation, with roll-back mechanism support.

Notifications You must be signed in to change notification settings

nuel-ikwuoma/Diamond-With-Rollback

Repository files navigation

Mentioned in Awesome Foundry

Foundry + Hardhat Diamonds

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.

Installation

  • Clone this repo
  • Install dependencies
$ yarn && forge update

Compile

  • To compile contracts, run:
$ npx hardhat compile

Deployment

Hardhat

$ npx hardhat run scripts/deploy.js

Foundry

  • 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

About

An ERC2535 Diamond Implementation, with roll-back mechanism support.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published