Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

I've completely rebuilt ERC404 to fix all issues(?) #101

Open
TechnicallyWeb3 opened this issue Feb 27, 2024 · 0 comments
Open

I've completely rebuilt ERC404 to fix all issues(?) #101

TechnicallyWeb3 opened this issue Feb 27, 2024 · 0 comments

Comments

@TechnicallyWeb3
Copy link

TechnicallyWeb3 commented Feb 27, 2024

I decided to take a look at ERC404 and thought I could do it better. I completely rewrote ERC404 to be completely compliant with ERC1155 and ERC20 standards. I chose to mix these two instead of ERC721/ERC20 for several reasons:

  1. ERC1155 and ERC20 have no function conflicts whereas there are function signature conflicts when mixing ERC721 and ERC20
  2. ERC1155 is already a widely adopted standard meaning any platform which supports ERC1155 will also support ERC404 fully
  3. All I need to do now is create a few standardized error messages for the potential errors while synchronizing ERC1155 and ERC20
  4. No new functions are needed
  5. Batch transfers possible in ERC1155 meaning users can batch specific NFTs with their token transfers.
  6. No ownership required, ownership can be added into the implementation contract allowing for developers to choose how centralized/decentralized their projects are (no previous token standard has onlyOwner functions)
  7. Token ID space can be opened back up from 1 - uint256.max, only preventing tokenId 0 since id 0 is where we store the ERC20 data.

If anyone is interested in trying my rendition of ERC404 as an ERC1155 in action I have it [https://sepolia.etherscan.io/address/0xde39999e3e500e4b4842f6a87fa1e6a4c95d0010#code](deployed to sepolia) or on [https://github.com/TechnicallyWeb3/TW3404](my repo).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant