CryptoVandals lets you liberate your NFTs from walled garden platforms. It burns the original NFT and mints a liberated NFT with proprietary links and gateways replaced by open, accessible, content addressed IPFS links.
CryptoVandals is made up of three pieces:
CryptoVandals lets you:
Liberate an NFT: When you tell CryptoVandals to liberate an NFT, it uploads the linked content to IPFS and sends a single transaction from your address to the CryptoVandals contract. The transaction burns the original NFT by sending it to a null address. The same transaction mints a liberated NFT, replacing the original links with open, accessible, content addressed IPFS links. The transaction sent to the CryptoVandals contract links to both the original NFT and the liberated NFT, maintaining its provenance.
Vandalize an NFT: When you tell CryptoVandals to vandalize an NFT, it does the same things as above, but changes the original content links to reference new content. It could be a modified version of the same content or something entirely new.
For the backend:
Solidity
open zeppelin ERC-721 contracts
HardHat + Ethers + TypeScript
waffle for testing
For the frontend:
Svelte
TypeScript
Ethers
ipfs-client-http
snowpack
For development:
ethnode https://github.com/vrde/ethnode
ipfs
github actions for CI