chiru-labs / ERC721A

https://ERC721A.org
MIT License
2.51k stars 842 forks source link

The Soulbound NFT is burnable but non-transferable and becomes part of the owner's web3 identity #410

Closed skarard closed 2 years ago

skarard commented 2 years ago

This PR is for the most basic implementation of a burnable & non-transferable Soulbound NFT.

This implementation is to modify _beforeTokenTransfers(from, to, startTokenId, quantity) to only allow transfer to and from the null address.

cygaar commented 2 years ago

Appreciate the PR, but this is more of an implementation than an extension.

I'll leave this open for a day or two in case someone wants to see the implementation.

Vectorized commented 2 years ago

I feel that this PR is better left for the individual devs to implement due to the highly open-ended nature of Soul Bound Tokens.

The devs may want to soulbound:

It is difficult to predict what will be the exact use case.

Additionally, it is orthogonal to the main goal of ERC721A, which is to provide efficient batch mints. See #246.

Thanks for your efforts and understanding.

skarard commented 2 years ago

Thanks for the response and for keeping this PR open for a little bit in case anyone is interested.

As I mentioned in https://github.com/chiru-labs/ERC721A/issues/408 this implementation is to be used in an upcoming project.

I'll keep the Soulbound NFT available for anyone who's interested in SBTs or non-transferable NFTs in my repo https://github.com/skarard/ERC721A on the main branch.