Skip to content

okwme/block-workshop

Repository files navigation

Serverless NFTs


HALLO 👋

  • I'm Billy Rennekamp, I work for a couple big projects like Cosmos Network, the creators of Tendermint and the Internet of Blockchains, and Gnosis, a prediction market platform and the creators of the Gnosis Safe and the DutchX decentralized exchange software. I also build on a couple smaller projects like Clovers Network, a game for generating rare art, MemeLordz, a curation market of memes (/r/MemeEconomy on the blockchain), ENS Nifty, a service for wrapping ENS domain names in NFTs so they can be sold on marketplaces like opensea and Doneth a shared wallet for open source projects.

The first part of this tutorial demonstrates how to deploy an NFT using a technique that makes it easy to update the tokenURI endpoint which returns information about token metadata. This will keep your token flexible as infrastructure changes so quickly around decentralized technology.

The second part of this tutorial will demonstrate how to create a serverless solution for serving that metadata. This is a widely used web2 infrastructure solution that is cheap and scaleable. It is not decentralized; This is a solution for using the Internet as it exists today. When the infrastructure around decentralized storage is a little faster and more reliable, you can replace this metadata solution for another and update your token accordingly : )

Outline

  1. Upgradeable Token URI
    1. Setup Environment
    2. Make ERC-721
    3. Make Metadata
    4. Add Metadata to ERC-721
    5. Create Migrations
    6. Make Tests
    7. Make Migration for Updates
    8. Update ERC-721 and Tests
    9. Deploy
    10. Verify Contracts on Etherescan
  2. Serverless Metadata
    1. Make new netlify project
    2. Install netlify lambda
    3. Add helloworld function
    4. Add metadata
    5. Add proxy
    6. Add opensea
    7. Add rarebits
    8. Re-deploy and mint a token

Go to the first step!