Where code, art and creativity intersect

Upgrading the design of our Smart Contracts

We are happy to announce that we have upgraded our smart contracts, helping set the foundations for future growth.

When we first launched GEN.ART we built a single contract that wrapped all collections and handled all the functionality. This approach was very limited in terms of adding new features like different mint mechanics. Moreover the storage of a single contract grows with the amount of tokens minted which will result in increasing gas costs over time for future mints. After some time we moved on deploying individual ERC721 contracts for each collection we launched. This process has been done manually which becomes messy at some point.

Our new contract design aims to solve the above mentioned issues by splitting out the core functionality and payment splitting from the ERC721 implementation.

We are able to deploy individual contracts for each collection and add various mint mechanics to them. Artists can choose from different ERC721 implementations as the interface evolves (ERC721A). Moreover it allows us to delegate responsibility (e.g. creating artists, collections, etc) to multiple signers which enables us to build a web3 application that can be controlled by the community.

Benefits:

  • Lower gas costs on token transfers & swaps
  • Flexibility for artists to choose from different ERC721 implementations and mint mechanics
  • No token approvals when listing on OS
  • Modular, extendable, upgradable
  • More efficient minting, meaning lower gas


Minters: Multiple minter contracts can be deployed into the ecosystem. Each minter can handle different mint mechanics (mint via flash loan membership, fixed price, DA, etc).

ERC721 Implementations: Multiple implementations can be deployed into the ecosystem. E.g ERC721A can be added in the future.

Collection Factory: The Collection Factory points to various ERC721 implementations and minters. Clones implementation to new contract address. Each collection can have a different implementation and minter.

Payment Splitter Factory: Points to a deployed PaymentSplitter implementation. Clones implementation to new contract address. For each artist a PaymentSplitter is deployed.

GEN.ART Curated: The central entry point controlled by the GA Admin.