NFT expert with artwork intergration

Job ID: 32420681

Budget: $25 – $50 USD

User Flow
We have already finished the front end part.
Our requirements are as follows.

- Customer needs to connect Solana(for payment), and Ethereum (or other wallet) for the NFT submission.
- Once NFT wallet (e.g. on Ethereum) is connected, users should be able to see the NFT's that are in their wallet on their profile page (like with Opensea)
- Automatically hide NFT's that were not 'collected' with a signature transaction (to prevent scam airdropped NFT's). Also allow user to view and manually unhide NFT's that were hidden
- When customers buy a ticket - they are actually buying an NFT. The NFT gives them the entry into the raffle. To get around 'lottery' regulations, the NFT is not a ticket, it has it's own value. We are just attributing an entry from ownership of the NFT.
- Therefore we should have some simple system that automatically (algorithmically/AI) generates an image to be used as an NFT
- NFT 'tickets' should have some identifying metadata for the NFT giveaway and ID of the 'ticket' etc
- We will release an NFT series of 3888 'genesis' raffle tickets to mark the launch of the platform. The price of each NFT to be confirmed.
- Ownership of the NFT from the initial mint release gives owners a 50% discount off fees on all NFT sales that run through the platform
- We will run a whitelist process for the minting process, in combination with a public sale. During the whitelist sale, only wallet addresses on the whitelist can mint.
- Our platform takes a % cut of all sales male
- The % of the total sale value that the platform takes should be editable by the Site Admin. Initially, this value is set to 5%.
- The entire transaction should be handled by the smart contract. The website should not be custodian of the NFT or the money, and we only take our fee on completion of the giveaway.
- A sale event can be set by the Seller to be time limited, or it can run until completed.
- If a 'time limited' event period expires before all ticket NFTs are sold, then ask the Seller if they're prepared to accept the current number of sales:
1. If yes, the select winner and transfer current balance to Buyer.the money is returned to the Buyers (minus any transaction costs)
2. If no, then ask if Buyer wants to extend the event?
3. If no, then cancel listing and refund money to Solana wallets (minus any transaction fees)

- Seller can cancel the auction prior to expiry. If NFT tickets have already been purchased by Buyers, then there is a penalty fee equal to 10% of the currently committed 'ticket' sales value, which is distributed back to the 'ticket' buyers (minus our 5% of that 10%)

- Buyers can not cancel their NFT ticket purchase once they have minted an NFT ticket

For Buyers, to start the Giveaway process:
1. Select the NFT from wallet
2. Specify the Sell value
3. Specify the number of giveaway NFTs (i.e. tickets) - min 2, max 10,000
4. Review listing info i.e. % chance of Buyers to win, and how much Seller will receive after fees.
5. Sign smart contract
6. Pay any gas fees as required
7. Promote the giveaway event. When a Buyer has created the event, give them some easy options to promote/share their giveway with templated links via Twitter, Instagram, Web URL

- The view for each NFT should include information that helps to prevent fraud (e.g. contract address with link, owner wallet, creator wallet, collection name, link to Opensea listing, current floor price, rarity if possible etc)

When a potential Buyer views the NFT listing, they are given some essential data including:
- cost per NFT ticket
- % chance of winning
- contract address of the NFT collection (link)

- Seller wallet (link)

- Creator wallet (link)

- Collection name (show if its a verified collection on Opensea)
- link to Opensea listing
- current floor price on Opensea (other markets)
- rarity if possible
Related categories: JavaScript MySQL React.js Blockchain Smart Contracts