Skip to content

Instantly share code, notes, and snippets.

@steveklebanoff
Last active May 4, 2020 04:32
Show Gist options
  • Save steveklebanoff/4d80f97cf38c7378b24fc63b9c70da0a to your computer and use it in GitHub Desktop.
Save steveklebanoff/4d80f97cf38c7378b24fc63b9c70da0a to your computer and use it in GitHub Desktop.

Crypto Art Residency

The Crypto Art Residency is a smart contract that helps crypto artists earn income and motivates them to create a series of unique works.

Participants

Artists: contribute to the art collection in exchange for ETH.

Sponsor: either acts as the buyer of last resort (guaranteeing income for the artists), or earns a commission if the art bundle sells to someone else.

Logic

A few crypto artists agree to enter into a four week "Crypto Art Residence" with a sponsor. A smart contract is deployed to facilitate the residency.

Every week, each artist must create one new NFT and send it to the smart contract which takes custody of the work. If an artist fails to submit a piece by the end of each week, their address is removed from the smart contract and they will be unable to claim any rewards.

At the end of four weeks, the smart contract automatically generates an offer to sell the entire bundle of works for 5 ETH.

After the sale, the revenue is distributed evenly amongst the artists, minus a 0.25 ETH fee which goes to the sponsor.

If no one is willing to buy the bundle after 10 days, the sponsor automatically becomes the "buyer of last resort" and buys the bundle for 2.5 ETH.

Variables

Each residency could be customized based on the variables they deploy the smart contract with.

Artist addresses: A list of ethereum addresses for the crypto artists that are participating in the residency

Epoch Length: number of days that represent an "epoch". Artists need to submit 1 NFT every epoch. (i.e. 7 days)

Num Epochs: number of epochs that the residency takes place over (i.e. 4)

Order Sale Price: the price in which the bundle will be offered for sale for: (i.e. 5 ETH)

Order Expiration: the time in which the order bundle offer stays alive for (i.e. 10 days)

Sponsor amount: The amount that must be deposited into the smart contract by the sponsor upon contract creation. This will be used to buy the bundle if the order expires (i.e. 2.5 ETH)

Sponsor fee: the fee that goes to the sponsor if someone else buys the bundle (i.e. 0.25 ETH)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment