This is an implementation of the ERC721 specification in Vyper. It was done as a learning excercise, and has not been audited. Moreover, due to certain limitations of Vyper (see TODOs below), the implementation doesn't yet comply with the specification.
npm i
npm run test
If you make any modifications to the contracts, you will need re-compile:
npm run build
A truffle compatible build process is handled by truper, which does not include vyper compiler. You will need to have the vyper compiler installed and available in your terminal's environment. If you can't run $ vyper -h, the build process will fail.
See the Vyper installation instructions.
- Implement the
safeTransfer()function with data. (Dependent on adding default parameter values in vyper). Currently it is implemented but namedsafeTransferWithData(). - Add a test for the ability to send from
safeTransferWithData() - Add the erc721 MetaData interface
- Add the erc721 Enumberable interface
The test suite used here is taken from 0xCert's ethereum-erc721, with only minor modifications. Thank you to them for their work.