project screenshot 1
project screenshot 2
project screenshot 3
project screenshot 4
project screenshot 5
project screenshot 6

LiquidNFT

Making NFTs liquid. Enabling people to buy fractions of NFT. Being able to invest just a few cents while still being exposed to an NFT collection price.

LiquidNFT

Created At

ETHOnline 2022

Project Description

I want to buy a CryptoPunk, but that cost $100k, and I don't have the funds. What if I could just invest a cent and be exposed to the collection floor price?

The idea is to create a smart contract that deploys 3 other contracts. A token, an NFT collection, and a vault.

The vault would store the created NFTs. Users can then exchange in both directions tokens for NFT and vice-versa at a fixed 1:1 parity.

All the NFTs need to be sent to the vault before distributing the tokens to users. The token can be distributed through a sale or can be added to liquidity as fair launch. NFT collection creator has to provide liquidity on a DEX.

This enable users to be exposed to an NFT collection price by buying the associated token, while being able to invest just a cent. Arbitrage would be maintaining the two assets at an equivalent price. Of course, this is an experiment and it is hard to assess how the market would react.

Also, this V0 does not take rarity into consideration, and cannot be applied to existing collections. However, this is subject to improvement.

We believe that this could attract many new investors into the NFT market. Some collections require hundreds of thousands of dollars as a minimum investment. That may be over thanks to LiquidNFT.

Link to use the deployment contract: mainnet: https://optimistic.etherscan.io/address/0x506bc01c73664006e114a392e4623fb10ec29d77#code testnets: https://kovan-optimistic.etherscan.io/address/0xb994b82754a36b22d766bf66c615070f03d90726#code

LiquidNFT Collection: https://qx.app/collection/0x4eC673D2DEbd8EC5901456EF607B56D90d515B00

How it's Made

This NFT infrastructure is deployed on Optimism for its cheap yet reliable network. The metadata is stored using NFTStorage devtool provided by IPFS & Filecoin.

Openzeppelin was of great help to create the most updated erc20 and 721 smart contracts. As well as Visual Studio Code as IDE and Hardhat as a framework.

I never deployed any NFT collection before the Hackathon, I had to understand URI urls, metadata and much more. To make my life simpler, I used NFTup to upload my collection online.

In order to achieve the desired goal, 3 smart contracts had to be written. A classic ERC20, a modified ERC721 and a from scratch Vault. The real challenge was to structure these smart contracts so they would all be interconnected in some specific ways.

To get the most efficient result I wanted to use a framework used by professionals. I choose Hardhat for its detailed and clear documentation. It wasn't an easy task to use this framework since the only tool I knew before was Remix. Yet, it was super interesting and I can now work with it from contract creation to deployment on any EVM compatible network.

Of course, a strong unit test had to be set in place to guarantee correct execution of the contracts. Having no knowledge of it made this task challenging and time consuming.

Once all this was done, I still had to find a way to deliver more than lines of code. Meaning a service that people can use in order to create their own Liquid collections.

Since I am not familiar with front-end development, time is slowly running out. I decided to build a 4th smart contract called Deployer that would deploy all 3 smart contracts by keeping track of them. And all this on an existing front-end; Optimism Scan.

I ran into a lot of issues that I mostly managed to solve by searching online. I was really confused by the structure I had to use to make the vault possible. I asked on stack-overflow and got a quick but super efficient answer that made the vault possible. Probably saved me a few days of work and some headache.

I feel that I learned so much during this hackathon. I feel extremely motivated and I would love to go further with LiquidNFT. My goal is to launch my own collection and add liquidity in order to start it as a fair launch. A designer is working on a collection and we would love to use the eventual hackathon prize money to create this liquidity.

I started from scratch, having the idea the same day as the Hackathon started. I knew solidity, but I never used Hardhat or javascript before. I was impressed by how motivation can boost me up working on such a complex project tirelessly. Also, I wasn't sure I could make it work and I am more than happy with the result. Hoping other creators will use it for opening the NFT door to small investors.

background image mobile

Join the mailing list

Get the latest news and updates