SYMBIOSIS

Introduction

Symbiosis explore the relationship between an art piece and its associated NFT and how those two elements form a symbiotic relationship. In this work, we are pushing this idea by producing ERC-721 NFTs whose associated art is generated automatically from their own history available publicly on the Ethereum blockchain. Each art piece evolves over time and morphs uniquely so as to be a visual representation of themselves as seen through the publicly available ledger.

demo-0 demo-1 demo-2

Art Visual Mechanic

Each art piece is a visual animation that evolves over time based on the following mechanic:

  • mint: The look and feel (traits) of the art are set during the minting process
  • time: The NFT automatically generates new frame as time pass
  • transfer: Each transfer of the NFT adds some features to the art in the form of a moving "brush".

Minting

Each NFT piece has some properties that gives them a distinct "look and feel". Trails fade, morphs and scroll in a very lively fashion following properties that are set during the minting process. The morphing is driven by a parameterized algorithm inspired by the famous Conway's Game of Life. The parameters of this algorithm are derived from a pseudo-random seed calculated from the first owner's public key, timestamp and token ID.

Time

When a piece is brought to existence through the minting process, a new animation is created and will automatically generates a new frame every hour. Since the animation is played at 20 frames per second (1 frame every 50 msec), this means that 1.2 second of art is generated each day for each minted NFT.

Transfer

Each transfer of the NFT visually affect the animation from this moment on while keeping the past intact. Each transfer adds a moving brush whose sweeping motion is based on a parameterized lorenz strange attractor. Each brush has its own color, direction and speed, all derived from a pseudo-random seed calculated from the new owner's public key, the timestamp of the transfer and the token ID. Essentially, the art will grow in visual complexity as it is being passed around but will remain visually simple for those who hodl.

demo-0 demo-1 demo-2

Architecture Details

Symbiosis is made of two components that work together to generate the art and its associated NFT on the blockchain:

  • The ERC-721 smart contract (NFT) is hosted on the public Ethereum blockchain. The NFT points to the IPFS hash of the generator and keeps track of each newly minted token as well as each transfer. For every token, the smart contract can output a seed that can be fed to the generator off-chain to generate the art. The seed is a compact representation of the NFT token's history in hexadecimal form so that it can be easily copy/pasted.
  • The Generator is a javascript code that can run in the browser and is hosted on IPFS. Given a token ID, the generator can query the smart contract on Ethereum in order to fetch details about its own history and generates the art accordingly. Alternatively, one can also manually input a seed provided by the smart contract to generate the art as the seed contains the same information. The art can thus execute even offline.

The smart sontract on Ethereum references the hash of the generator on IPFS. Similarly, the generator code statically references the smart contract's address on the Ethereum blockchain. Once deployed, the generator and the NFT cannot be altered.